@idealyst/navigation 1.2.129 → 1.2.130

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@idealyst/navigation",
3
- "version": "1.2.129",
3
+ "version": "1.2.130",
4
4
  "description": "Cross-platform navigation library for React and React Native",
5
5
  "readme": "README.md",
6
6
  "main": "src/index.ts",
@@ -45,9 +45,9 @@
45
45
  },
46
46
  "peerDependencies": {
47
47
  "@idealyst/camera": "^1.2.30",
48
- "@idealyst/components": "^1.2.129",
48
+ "@idealyst/components": "^1.2.130",
49
49
  "@idealyst/microphone": "^1.2.30",
50
- "@idealyst/theme": "^1.2.129",
50
+ "@idealyst/theme": "^1.2.130",
51
51
  "@react-navigation/bottom-tabs": ">=7.0.0",
52
52
  "@react-navigation/drawer": ">=7.0.0",
53
53
  "@react-navigation/native": ">=7.0.0",
@@ -74,13 +74,13 @@
74
74
  "@idealyst/animate": "^1.2.38",
75
75
  "@idealyst/blur": "^1.2.40",
76
76
  "@idealyst/camera": "^1.2.30",
77
- "@idealyst/components": "^1.2.129",
77
+ "@idealyst/components": "^1.2.130",
78
78
  "@idealyst/datagrid": "^1.2.30",
79
79
  "@idealyst/datepicker": "^1.2.30",
80
80
  "@idealyst/lottie": "^1.2.38",
81
- "@idealyst/markdown": "^1.2.129",
81
+ "@idealyst/markdown": "^1.2.130",
82
82
  "@idealyst/microphone": "^1.2.30",
83
- "@idealyst/theme": "^1.2.129",
83
+ "@idealyst/theme": "^1.2.130",
84
84
  "@types/react": "^19.1.8",
85
85
  "@types/react-dom": "^19.1.6",
86
86
  "react": "^19.1.0",
@@ -158,6 +158,7 @@ const buildScreen = (params: RouteParam, Navigator: TypedNavigator, parentPath =
158
158
  };
159
159
  }
160
160
 
161
+
161
162
  // Wrap headerLeft if it's a component
162
163
  if (options.headerLeft) {
163
164
  const HeaderLeftContent = options.headerLeft as React.ComponentType<any>;
@@ -6,6 +6,36 @@ import type { NavigateParams } from "../context/types";
6
6
  */
7
7
  export const NOT_FOUND_SCREEN_NAME = '__notFound__';
8
8
 
9
+ /**
10
+ * Screen transition animation type.
11
+ * On native, maps directly to react-navigation's `animation` option.
12
+ * On web, this is a noop — no transition animations are applied.
13
+ *
14
+ * - "default" — platform default animation
15
+ * - "fade" — fades screen in or out
16
+ * - "fade_from_bottom" — fade from bottom animation
17
+ * - "flip" — flips the screen (iOS only, requires modal presentation)
18
+ * - "simple_push" — default animation without native header transition (iOS only)
19
+ * - "slide_from_bottom" — slides in from bottom
20
+ * - "slide_from_right" — slides in from right (Android only, default on iOS)
21
+ * - "slide_from_left" — slides in from left
22
+ * - "ios_from_right" — iOS-style slide from right (Android only, default on iOS)
23
+ * - "ios_from_left" — iOS-style slide from left (Android only, default on iOS)
24
+ * - "none" — no animation
25
+ */
26
+ export type ScreenAnimation =
27
+ | 'default'
28
+ | 'fade'
29
+ | 'fade_from_bottom'
30
+ | 'flip'
31
+ | 'simple_push'
32
+ | 'slide_from_bottom'
33
+ | 'slide_from_right'
34
+ | 'slide_from_left'
35
+ | 'ios_from_right'
36
+ | 'ios_from_left'
37
+ | 'none';
38
+
9
39
  /**
10
40
  * Tab bar specific screen options
11
41
  */
@@ -86,6 +116,14 @@ export type ScreenOptions = {
86
116
  * Native: Screen uses fullScreenModal presentation
87
117
  */
88
118
  fullScreen?: boolean;
119
+ /**
120
+ * Screen transition animation.
121
+ * On native, controls how the screen animates when pushed/popped.
122
+ * On web, this is a noop.
123
+ *
124
+ * @default 'default' (platform default)
125
+ */
126
+ animation?: ScreenAnimation;
89
127
 
90
128
  } & NavigatorOptions;
91
129