From 4e11ea716aa9ac9be69328da3268444698280cec Mon Sep 17 00:00:00 2001 From: Nils Gereke Date: Mon, 28 Sep 2026 21:19:53 +0200 Subject: [PATCH 1/3] fix: import ionic utilities --- src/native-integration/index.ts | 2 +- src/native-integration/transition.ts | 2 +- src/native/prehide.ts | 2 +- src/native/runtime.ts | 2 +- src/sheets-of-glass/animations.ts | 4 ++-- src/sheets-of-glass/index.ts | 4 ++-- src/tab-bar-searchable/animations/enter.ts | 2 +- src/tab-bar-searchable/animations/leave.ts | 2 +- src/tab-bar-searchable/index.ts | 2 +- src/transition/index.ts | 6 +++--- src/transition/ios.transition.ts | 2 +- src/utils.ts | 2 +- 12 files changed, 16 insertions(+), 16 deletions(-) diff --git a/src/native-integration/index.ts b/src/native-integration/index.ts index f0320370..1927e36f 100644 --- a/src/native-integration/index.ts +++ b/src/native-integration/index.ts @@ -1,5 +1,5 @@ /// -import type { Animation } from '@ionic/core'; +import type { Animation } from '@ionic/core/components'; export interface NativeUIShellIntegration { suspend(scopes: HTMLElement[]): Promise<(canceled?: boolean) => void>; diff --git a/src/native-integration/transition.ts b/src/native-integration/transition.ts index af0fcb1f..74d4caee 100644 --- a/src/native-integration/transition.ts +++ b/src/native-integration/transition.ts @@ -1,4 +1,4 @@ -import type { AnimationBuilder } from '@ionic/core'; +import type { AnimationBuilder } from '@ionic/core/components'; import { connectNativeUIShellTransition } from './index'; /** diff --git a/src/native/prehide.ts b/src/native/prehide.ts index 6fa5fe72..b719a2fe 100644 --- a/src/native/prehide.ts +++ b/src/native/prehide.ts @@ -1,5 +1,5 @@ import { modalUsesVerticalBars } from './shared/modal'; -import { LIFECYCLE_DID_ENTER, LIFECYCLE_DID_LEAVE, LIFECYCLE_WILL_ENTER, LIFECYCLE_WILL_LEAVE } from '@ionic/core'; +import { LIFECYCLE_DID_ENTER, LIFECYCLE_DID_LEAVE, LIFECYCLE_WILL_ENTER, LIFECYCLE_WILL_LEAVE } from '@ionic/core/components'; import { VERTICAL_BARS_TRANSITION_CANCELED } from '../native-integration'; import { childElements, diff --git a/src/native/runtime.ts b/src/native/runtime.ts index b68c43bb..52a9a495 100644 --- a/src/native/runtime.ts +++ b/src/native/runtime.ts @@ -1,6 +1,6 @@ import { inVerticalBarsSurface, topModal, modalUsesVerticalBars, modalVerticalBarFrame } from './shared/modal'; import type { PluginListenerHandle } from '@capacitor/core'; -import { LIFECYCLE_WILL_ENTER, LIFECYCLE_WILL_LEAVE, LIFECYCLE_DID_ENTER, LIFECYCLE_DID_LEAVE } from '@ionic/core'; +import { LIFECYCLE_WILL_ENTER, LIFECYCLE_WILL_LEAVE, LIFECYCLE_DID_ENTER, LIFECYCLE_DID_LEAVE } from '@ionic/core/components'; import { VERTICAL_BARS_TRANSITION_CANCELED, getNativeSearchBindings, setNativeUIShellIntegration } from '../native-integration'; import { createSearchSupport } from './components/searchable-tabs'; import type { diff --git a/src/sheets-of-glass/animations.ts b/src/sheets-of-glass/animations.ts index 2f8183bf..0b45cb4b 100644 --- a/src/sheets-of-glass/animations.ts +++ b/src/sheets-of-glass/animations.ts @@ -1,6 +1,6 @@ -import type { Animation, AnimationKeyFrames } from '@ionic/core'; +import type { Animation, AnimationKeyFrames } from '@ionic/core/components'; import { AnimationPosition, EffectScales } from './interfaces'; -import { createAnimation, GestureDetail } from '@ionic/core'; +import { createAnimation, GestureDetail } from '@ionic/core/components'; import { getStep } from '../utils'; // Work in main/cross-axis coordinates so native horizontal samples also drive the rail. diff --git a/src/sheets-of-glass/index.ts b/src/sheets-of-glass/index.ts index fe910367..93aa0e70 100644 --- a/src/sheets-of-glass/index.ts +++ b/src/sheets-of-glass/index.ts @@ -1,6 +1,6 @@ import { AnimationPosition, EffectScales, registeredEffect } from './interfaces'; -import { createAnimation, createGesture } from '@ionic/core'; -import type { Animation, Gesture, GestureDetail } from '@ionic/core'; +import { createAnimation, createGesture } from '@ionic/core/components'; +import type { Animation, Gesture, GestureDetail } from '@ionic/core/components'; import { changeSelectedElement, cloneElement, getStep } from '../utils'; import { isNativeUIShell } from '../native-integration'; import { diff --git a/src/tab-bar-searchable/animations/enter.ts b/src/tab-bar-searchable/animations/enter.ts index 0fedd804..0ca64293 100644 --- a/src/tab-bar-searchable/animations/enter.ts +++ b/src/tab-bar-searchable/animations/enter.ts @@ -1,4 +1,4 @@ -import { Animation, createAnimation } from '@ionic/core'; +import { Animation, createAnimation } from '@ionic/core/components'; import { ANIMATION_DELAY_CLOSE_BUTTONS, OPACITY_TRANSITION, type ElementReferences, type ElementSizes } from '@rdlabo/ionic-theme-utils'; import { cloneElement } from '../../utils'; diff --git a/src/tab-bar-searchable/animations/leave.ts b/src/tab-bar-searchable/animations/leave.ts index bdfa20f2..f34576ae 100644 --- a/src/tab-bar-searchable/animations/leave.ts +++ b/src/tab-bar-searchable/animations/leave.ts @@ -1,4 +1,4 @@ -import { Animation, createAnimation } from '@ionic/core'; +import { Animation, createAnimation } from '@ionic/core/components'; import { ANIMATION_DELAY_CLOSE_BUTTONS, OPACITY_TRANSITION, type ElementReferences, type ElementSizes } from '@rdlabo/ionic-theme-utils'; import { cloneElement } from '../../utils'; diff --git a/src/tab-bar-searchable/index.ts b/src/tab-bar-searchable/index.ts index d7f91743..aba5e694 100644 --- a/src/tab-bar-searchable/index.ts +++ b/src/tab-bar-searchable/index.ts @@ -1,4 +1,4 @@ -import { createAnimation } from '@ionic/core'; +import { createAnimation } from '@ionic/core/components'; import { ANIMATION_DELAY_BASE, ANIMATION_DURATION, diff --git a/src/transition/index.ts b/src/transition/index.ts index a092cd30..e5afe131 100644 --- a/src/transition/index.ts +++ b/src/transition/index.ts @@ -1,9 +1,9 @@ import { config } from '../utils'; import { Build, writeTask } from '@stencil/core'; -import { LIFECYCLE_DID_ENTER, LIFECYCLE_DID_LEAVE, LIFECYCLE_WILL_ENTER, LIFECYCLE_WILL_LEAVE } from '@ionic/core'; -import type { NavOptions, NavDirection } from '@ionic/core'; -import type { Animation, AnimationBuilder } from '@ionic/core'; +import { LIFECYCLE_DID_ENTER, LIFECYCLE_DID_LEAVE, LIFECYCLE_WILL_ENTER, LIFECYCLE_WILL_LEAVE } from '@ionic/core/components'; +import type { NavOptions, NavDirection } from '@ionic/core/components'; +import type { Animation, AnimationBuilder } from '@ionic/core/components'; import { createFocusController } from '../focus-controller'; import { raf } from '../utils'; diff --git a/src/transition/ios.transition.ts b/src/transition/ios.transition.ts index 80e8f4dc..4c63b566 100644 --- a/src/transition/ios.transition.ts +++ b/src/transition/ios.transition.ts @@ -1,5 +1,5 @@ import { createIosTransitionAnimation, shadow } from '@rdlabo/ionic-theme-utils'; -import type { Animation } from '@ionic/core'; +import type { Animation } from '@ionic/core/components'; import type { TransitionOptions } from './index'; import { getIonPageElement } from './index'; import { withNativeUIShellTransition } from '../native-integration/transition'; diff --git a/src/utils.ts b/src/utils.ts index b9e8a71d..55efcd44 100644 --- a/src/utils.ts +++ b/src/utils.ts @@ -1,5 +1,5 @@ import { AnimationPosition } from './sheets-of-glass/interfaces'; -import { IonicConfig } from '@ionic/core'; +import { IonicConfig } from '@ionic/core/components'; declare const __zone_symbol__requestAnimationFrame: ((callback: FrameRequestCallback) => number) | undefined; declare const requestAnimationFrame: ((callback: FrameRequestCallback) => number) | undefined; From 0f5623c7cdea5ed01c5da931be7f5162149b4667 Mon Sep 17 00:00:00 2001 From: Nils Gereke Date: Fri, 2 Oct 2026 04:40:13 +0200 Subject: [PATCH 2/3] fix: ionic 8 support --- src/native/prehide.ts | 2 +- src/native/runtime.ts | 2 +- src/sheets-of-glass/animations.ts | 4 ++-- src/sheets-of-glass/index.ts | 2 +- src/tab-bar-searchable/animations/enter.ts | 3 ++- src/tab-bar-searchable/animations/leave.ts | 3 ++- src/tab-bar-searchable/index.ts | 2 +- src/transition/index.ts | 2 +- src/utils.ts | 2 +- 9 files changed, 12 insertions(+), 10 deletions(-) diff --git a/src/native/prehide.ts b/src/native/prehide.ts index f87c60e7..799729d6 100644 --- a/src/native/prehide.ts +++ b/src/native/prehide.ts @@ -1,5 +1,5 @@ import { modalUsesVerticalBars } from './shared/modal'; -import { LIFECYCLE_DID_ENTER, LIFECYCLE_DID_LEAVE, LIFECYCLE_WILL_ENTER, LIFECYCLE_WILL_LEAVE } from '@ionic/core/components'; +import { LIFECYCLE_DID_ENTER, LIFECYCLE_DID_LEAVE, LIFECYCLE_WILL_ENTER, LIFECYCLE_WILL_LEAVE } from '@ionic/core/components/index.js'; import { VERTICAL_BARS_TRANSITION_CANCELED } from '../native-integration'; import { childElements, diff --git a/src/native/runtime.ts b/src/native/runtime.ts index 52a9a495..42517d57 100644 --- a/src/native/runtime.ts +++ b/src/native/runtime.ts @@ -1,6 +1,6 @@ import { inVerticalBarsSurface, topModal, modalUsesVerticalBars, modalVerticalBarFrame } from './shared/modal'; import type { PluginListenerHandle } from '@capacitor/core'; -import { LIFECYCLE_WILL_ENTER, LIFECYCLE_WILL_LEAVE, LIFECYCLE_DID_ENTER, LIFECYCLE_DID_LEAVE } from '@ionic/core/components'; +import { LIFECYCLE_WILL_ENTER, LIFECYCLE_WILL_LEAVE, LIFECYCLE_DID_ENTER, LIFECYCLE_DID_LEAVE } from '@ionic/core/components/index.js'; import { VERTICAL_BARS_TRANSITION_CANCELED, getNativeSearchBindings, setNativeUIShellIntegration } from '../native-integration'; import { createSearchSupport } from './components/searchable-tabs'; import type { diff --git a/src/sheets-of-glass/animations.ts b/src/sheets-of-glass/animations.ts index 0b45cb4b..fbabcfaa 100644 --- a/src/sheets-of-glass/animations.ts +++ b/src/sheets-of-glass/animations.ts @@ -1,6 +1,6 @@ -import type { Animation, AnimationKeyFrames } from '@ionic/core/components'; +import type { Animation, AnimationKeyFrames, GestureDetail } from '@ionic/core/components'; import { AnimationPosition, EffectScales } from './interfaces'; -import { createAnimation, GestureDetail } from '@ionic/core/components'; +import { createAnimation } from '@ionic/core/components/index.js'; import { getStep } from '../utils'; // Work in main/cross-axis coordinates so native horizontal samples also drive the rail. diff --git a/src/sheets-of-glass/index.ts b/src/sheets-of-glass/index.ts index 93aa0e70..c2db7505 100644 --- a/src/sheets-of-glass/index.ts +++ b/src/sheets-of-glass/index.ts @@ -1,5 +1,5 @@ import { AnimationPosition, EffectScales, registeredEffect } from './interfaces'; -import { createAnimation, createGesture } from '@ionic/core/components'; +import { createAnimation, createGesture } from '@ionic/core/components/index.js'; import type { Animation, Gesture, GestureDetail } from '@ionic/core/components'; import { changeSelectedElement, cloneElement, getStep } from '../utils'; import { isNativeUIShell } from '../native-integration'; diff --git a/src/tab-bar-searchable/animations/enter.ts b/src/tab-bar-searchable/animations/enter.ts index 0ca64293..72233a07 100644 --- a/src/tab-bar-searchable/animations/enter.ts +++ b/src/tab-bar-searchable/animations/enter.ts @@ -1,4 +1,5 @@ -import { Animation, createAnimation } from '@ionic/core/components'; +import type { Animation } from '@ionic/core/components'; +import { createAnimation } from '@ionic/core/components/index.js'; import { ANIMATION_DELAY_CLOSE_BUTTONS, OPACITY_TRANSITION, type ElementReferences, type ElementSizes } from '@rdlabo/ionic-theme-utils'; import { cloneElement } from '../../utils'; diff --git a/src/tab-bar-searchable/animations/leave.ts b/src/tab-bar-searchable/animations/leave.ts index f34576ae..8db3ba52 100644 --- a/src/tab-bar-searchable/animations/leave.ts +++ b/src/tab-bar-searchable/animations/leave.ts @@ -1,4 +1,5 @@ -import { Animation, createAnimation } from '@ionic/core/components'; +import type { Animation } from '@ionic/core/components'; +import { createAnimation } from '@ionic/core/components/index.js'; import { ANIMATION_DELAY_CLOSE_BUTTONS, OPACITY_TRANSITION, type ElementReferences, type ElementSizes } from '@rdlabo/ionic-theme-utils'; import { cloneElement } from '../../utils'; diff --git a/src/tab-bar-searchable/index.ts b/src/tab-bar-searchable/index.ts index 668b3dd4..b04ef691 100644 --- a/src/tab-bar-searchable/index.ts +++ b/src/tab-bar-searchable/index.ts @@ -1,4 +1,4 @@ -import { createAnimation } from '@ionic/core/components'; +import { createAnimation } from '@ionic/core/components/index.js'; import { addSearchDismissButton } from './dismiss-button'; import { ANIMATION_DELAY_BASE, diff --git a/src/transition/index.ts b/src/transition/index.ts index e5afe131..07e9c7e4 100644 --- a/src/transition/index.ts +++ b/src/transition/index.ts @@ -1,7 +1,7 @@ import { config } from '../utils'; import { Build, writeTask } from '@stencil/core'; -import { LIFECYCLE_DID_ENTER, LIFECYCLE_DID_LEAVE, LIFECYCLE_WILL_ENTER, LIFECYCLE_WILL_LEAVE } from '@ionic/core/components'; +import { LIFECYCLE_DID_ENTER, LIFECYCLE_DID_LEAVE, LIFECYCLE_WILL_ENTER, LIFECYCLE_WILL_LEAVE } from '@ionic/core/components/index.js'; import type { NavOptions, NavDirection } from '@ionic/core/components'; import type { Animation, AnimationBuilder } from '@ionic/core/components'; import { createFocusController } from '../focus-controller'; diff --git a/src/utils.ts b/src/utils.ts index 55efcd44..d46ef4c0 100644 --- a/src/utils.ts +++ b/src/utils.ts @@ -1,5 +1,5 @@ import { AnimationPosition } from './sheets-of-glass/interfaces'; -import { IonicConfig } from '@ionic/core/components'; +import type { IonicConfig } from '@ionic/core/components'; declare const __zone_symbol__requestAnimationFrame: ((callback: FrameRequestCallback) => number) | undefined; declare const requestAnimationFrame: ((callback: FrameRequestCallback) => number) | undefined; From d74e6be9e3a0af33962767414481150a9d03970e Mon Sep 17 00:00:00 2001 From: rdlabo Date: Fri, 2 Oct 2026 16:35:39 +0900 Subject: [PATCH 3/3] style: restore searchable animation indentation --- src/tab-bar-searchable/index.ts | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/tab-bar-searchable/index.ts b/src/tab-bar-searchable/index.ts index b04ef691..10445c75 100644 --- a/src/tab-bar-searchable/index.ts +++ b/src/tab-bar-searchable/index.ts @@ -202,9 +202,9 @@ const leaveEvent = async ( const tabAnimations = verticalSearch ? [] : [ - createReverseTabBarAnimation(ionTabBar, references, searchableEventCache.elementSizes), - createReverseEffectAnimation(references, searchableEventCache.elementSizes, searchableEventCache.colorSelected), - ]; + createReverseTabBarAnimation(ionTabBar, references, searchableEventCache.elementSizes), + createReverseEffectAnimation(references, searchableEventCache.elementSizes, searchableEventCache.colorSelected), + ]; const searchContainerAnimation = createReverseSearchContainerAnimation(references, searchableEventCache.elementSizes); const closeButtonsAnimation = createReverseCloseButtonsAnimation(references); const fabButtonAnimation = createReverseFabButtonAnimation(ionFabButton, searchableEventCache.elementSizes);