9.0 Released! → Native ESM runtimes 🚀, Vite support ⚡️, multi-window apps and more...
Read Announcement

Defined in: ui/transition/shared-transition.ts

Shared Element Transitions (preview) Allows you to auto animate between shared elements on two different screesn to create smooth navigational experiences. View components can define sharedTransitionTag="name" alone with a transition through this API.

Constructors ​

Constructor ​

ts
new SharedTransition(): SharedTransition;

Returns ​

SharedTransition

Properties ​

DEBUG ​

ts
static DEBUG: boolean;

Defined in: ui/transition/shared-transition.ts

Enable to see various console logging output of Shared Element Transition behavior.


finishedEvent ​

ts
static finishedEvent: string;

Defined in: ui/transition/shared-transition.ts

When the transition finishes.


inProgress ​

ts
static inProgress: boolean;

Defined in: ui/transition/shared-transition.ts

Whether a transition is in progress or not. Note: used internally however exposed in case custom state ordering is needed. Updated when transitions start/end/cancel.


interactiveCancelledEvent ​

ts
static interactiveCancelledEvent: string;

Defined in: ui/transition/shared-transition.ts

When the interactive transition cancels.


interactiveUpdateEvent ​

ts
static interactiveUpdateEvent: string;

Defined in: ui/transition/shared-transition.ts

When the interactive transition updates with the percent value.


startedEvent ​

ts
static startedEvent: string;

Defined in: ui/transition/shared-transition.ts

When the transition starts.

Methods ​

custom() ​

ts
static custom(transition: Transition, options?: SharedTransitionConfig): {
  instance: Transition;
};

Defined in: ui/transition/shared-transition.ts

Configure a custom transition with presentation/dismissal options.

Parameters ​

ParameterTypeDescription
transitionTransitionThe custom Transition instance.
options?SharedTransitionConfig-

Returns ​

ts
{
  instance: Transition;
}

a configured SharedTransition instance for use with navigational APIs.

instance ​
ts
instance: Transition;

events() ​

ts
static events(): SharedTransitionObservable;

Defined in: ui/transition/shared-transition.ts

Listen to various shared element transition events.

Returns ​

SharedTransitionObservable

Observable


finishState() ​

ts
static finishState(id: number): void;

Defined in: ui/transition/shared-transition.ts

Finish transition state.

Parameters ​

ParameterTypeDescription
idnumberTransition instance id

Returns ​

void


getSharedElements() ​

ts
static getSharedElements(fromPage: ViewBase, toPage: ViewBase): {
  presented: View[];
  presenting: View[];
  sharedElements: View[];
};

Defined in: ui/transition/shared-transition.ts

Gather view collections based on sharedTransitionTag details.

Parameters ​

ParameterTypeDescription
fromPageViewBasePage moving away from
toPageViewBasePage moving to

Returns ​

ts
{
  presented: View[];
  presenting: View[];
  sharedElements: View[];
}

Collections of views pertaining to shared elements or particular pages

presented ​
ts
presented: View[];
presenting ​
ts
presenting: View[];
sharedElements ​
ts
sharedElements: View[];

getState() ​

ts
static getState(id: number): SharedTransitionState;

Defined in: ui/transition/shared-transition.ts

Get current state for any transition.

Parameters ​

ParameterTypeDescription
idnumberTransition instance id

Returns ​

SharedTransitionState


notifyEvent() ​

ts
static notifyEvent(eventName: string, data: SharedTransitionEventDataPayload): void;

Defined in: ui/transition/shared-transition.ts

Notify a Shared Transition event.

Parameters ​

ParameterTypeDescription
eventNamestringShared Transition event name
dataSharedTransitionEventDataPayload-

Returns ​

void


updateState() ​

ts
static updateState(id: number, state: SharedTransitionState): void;

Defined in: ui/transition/shared-transition.ts

Update transition state.

Parameters ​

ParameterTypeDescription
idnumberTransition instance id
stateSharedTransitionStateSharedTransitionState

Returns ​

void