@react-navigation/bottom-tabs 8.0.0-alpha.4 → 8.0.0-alpha.41
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/lib/module/index.js +1 -1
- package/lib/module/index.js.map +1 -1
- package/lib/module/navigators/createBottomTabNavigator.js +4 -25
- package/lib/module/navigators/createBottomTabNavigator.js.map +1 -1
- package/lib/module/utils/useBottomTabAnimation.js +1 -1
- package/lib/module/utils/useBottomTabAnimation.js.map +1 -1
- package/lib/module/utils/useBottomTabBarHeight.js +1 -1
- package/lib/module/utils/useBottomTabBarHeight.js.map +1 -1
- package/lib/module/views/BottomTabBar.js +40 -29
- package/lib/module/views/BottomTabBar.js.map +1 -1
- package/lib/module/views/BottomTabItem.js +2 -2
- package/lib/module/views/BottomTabItem.js.map +1 -1
- package/lib/module/views/{BottomTabViewCommon.js → BottomTabView.js} +1 -1
- package/lib/module/views/BottomTabView.js.map +1 -0
- package/lib/module/views/BottomTabViewCustom.js +90 -71
- package/lib/module/views/BottomTabViewCustom.js.map +1 -1
- package/lib/module/views/BottomTabViewNativeImpl.js +333 -115
- package/lib/module/views/BottomTabViewNativeImpl.js.map +1 -1
- package/lib/module/views/Deferred.js +41 -0
- package/lib/module/views/Deferred.js.map +1 -0
- package/lib/module/views/ScreenContent.js.map +1 -1
- package/lib/module/views/TabBarIcon.js +11 -48
- package/lib/module/views/TabBarIcon.js.map +1 -1
- package/lib/typescript/src/TransitionConfigs/SceneStyleInterpolators.d.ts +1 -1
- package/lib/typescript/src/TransitionConfigs/SceneStyleInterpolators.d.ts.map +1 -1
- package/lib/typescript/src/TransitionConfigs/TransitionPresets.d.ts +1 -1
- package/lib/typescript/src/TransitionConfigs/TransitionPresets.d.ts.map +1 -1
- package/lib/typescript/src/TransitionConfigs/TransitionSpecs.d.ts +1 -1
- package/lib/typescript/src/TransitionConfigs/TransitionSpecs.d.ts.map +1 -1
- package/lib/typescript/src/index.d.ts +11 -11
- package/lib/typescript/src/index.d.ts.map +1 -1
- package/lib/typescript/src/navigators/createBottomTabNavigator.d.ts +9 -15
- package/lib/typescript/src/navigators/createBottomTabNavigator.d.ts.map +1 -1
- package/lib/typescript/src/types.d.ts +64 -102
- package/lib/typescript/src/types.d.ts.map +1 -1
- package/lib/typescript/src/utils/BottomTabAnimationContext.d.ts +1 -1
- package/lib/typescript/src/utils/BottomTabAnimationContext.d.ts.map +1 -1
- package/lib/typescript/src/utils/useAnimatedHashMap.d.ts +1 -1
- package/lib/typescript/src/utils/useAnimatedHashMap.d.ts.map +1 -1
- package/lib/typescript/src/utils/useBottomTabAnimation.d.ts +1 -1
- package/lib/typescript/src/utils/useBottomTabAnimation.d.ts.map +1 -1
- package/lib/typescript/src/utils/useTabBarPosition.d.ts +1 -1
- package/lib/typescript/src/utils/useTabBarPosition.d.ts.map +1 -1
- package/lib/typescript/src/views/BottomTabBar.d.ts +3 -2
- package/lib/typescript/src/views/BottomTabBar.d.ts.map +1 -1
- package/lib/typescript/src/views/BottomTabItem.d.ts +20 -20
- package/lib/typescript/src/views/BottomTabItem.d.ts.map +1 -1
- package/lib/typescript/src/views/{BottomTabViewCommon.d.ts → BottomTabView.d.ts} +3 -3
- package/lib/typescript/src/views/BottomTabView.d.ts.map +1 -0
- package/lib/typescript/src/views/BottomTabViewCustom.d.ts +3 -2
- package/lib/typescript/src/views/BottomTabViewCustom.d.ts.map +1 -1
- package/lib/typescript/src/views/BottomTabViewNative.android.d.ts +1 -1
- package/lib/typescript/src/views/BottomTabViewNative.android.d.ts.map +1 -1
- package/lib/typescript/src/views/BottomTabViewNative.d.ts +1 -1
- package/lib/typescript/src/views/BottomTabViewNative.d.ts.map +1 -1
- package/lib/typescript/src/views/BottomTabViewNative.ios.d.ts +1 -1
- package/lib/typescript/src/views/BottomTabViewNative.ios.d.ts.map +1 -1
- package/lib/typescript/src/views/BottomTabViewNativeImpl.d.ts +3 -2
- package/lib/typescript/src/views/BottomTabViewNativeImpl.d.ts.map +1 -1
- package/lib/typescript/src/views/Deferred.d.ts +31 -0
- package/lib/typescript/src/views/Deferred.d.ts.map +1 -0
- package/lib/typescript/src/views/ScreenContent.d.ts +4 -4
- package/lib/typescript/src/views/ScreenContent.d.ts.map +1 -1
- package/lib/typescript/src/views/TabBarIcon.d.ts +8 -8
- package/lib/typescript/src/views/TabBarIcon.d.ts.map +1 -1
- package/package.json +19 -22
- package/src/index.tsx +2 -2
- package/src/navigators/createBottomTabNavigator.tsx +10 -75
- package/src/types.tsx +64 -110
- package/src/utils/useAnimatedHashMap.tsx +1 -1
- package/src/utils/useBottomTabAnimation.tsx +1 -1
- package/src/utils/useBottomTabBarHeight.tsx +1 -1
- package/src/views/BottomTabBar.tsx +68 -25
- package/src/views/BottomTabItem.tsx +18 -20
- package/src/views/BottomTabViewCustom.tsx +155 -125
- package/src/views/BottomTabViewNativeImpl.tsx +470 -155
- package/src/views/Deferred.tsx +57 -0
- package/src/views/ScreenContent.tsx +1 -2
- package/src/views/TabBarIcon.tsx +13 -56
- package/lib/module/views/BottomTabViewCommon.js.map +0 -1
- package/lib/typescript/src/views/BottomTabViewCommon.d.ts.map +0 -1
- /package/src/views/{BottomTabViewCommon.tsx → BottomTabView.tsx} +0 -0
|
@@ -1,14 +1,15 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
import { getLabel } from '@react-navigation/elements';
|
|
4
|
-
import {
|
|
4
|
+
import { ActivityView, Color, SafeAreaProviderCompat } from '@react-navigation/elements/internal';
|
|
5
5
|
import { CommonActions, MaterialSymbol, NavigationMetaContext, StackActions, useTheme } from '@react-navigation/native';
|
|
6
6
|
import * as React from 'react';
|
|
7
|
-
import { Animated, Platform, PlatformColor } from 'react-native';
|
|
7
|
+
import { Animated, Platform, PlatformColor, StyleSheet } from 'react-native';
|
|
8
8
|
import { Tabs } from 'react-native-screens';
|
|
9
9
|
import { BottomTabAnimationContext } from "../utils/BottomTabAnimationContext.js";
|
|
10
10
|
import { BottomTabBarHeightContext } from "../utils/BottomTabBarHeightContext.js";
|
|
11
11
|
import { useTabBarPosition } from "../utils/useTabBarPosition.js";
|
|
12
|
+
import { Deferred } from "./Deferred.js";
|
|
12
13
|
import { ScreenContent } from "./ScreenContent.js";
|
|
13
14
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
14
15
|
const ICON_SIZE = Platform.select({
|
|
@@ -18,6 +19,26 @@ const ICON_SIZE = Platform.select({
|
|
|
18
19
|
const meta = {
|
|
19
20
|
type: 'native-tabs'
|
|
20
21
|
};
|
|
22
|
+
function reducer(state, action) {
|
|
23
|
+
switch (action.type) {
|
|
24
|
+
case 'TRACK_TRANSITION':
|
|
25
|
+
return {
|
|
26
|
+
...state,
|
|
27
|
+
lastTransition: action.lastTransition,
|
|
28
|
+
confirmed: action.confirmed
|
|
29
|
+
};
|
|
30
|
+
case 'CLEAR_TRANSITION':
|
|
31
|
+
return state.lastTransition?.to === action.to ? {
|
|
32
|
+
...state,
|
|
33
|
+
lastTransition: null
|
|
34
|
+
} : state;
|
|
35
|
+
case 'CONFIRM_STATE':
|
|
36
|
+
return state.confirmed.routeKey === action.confirmed.routeKey && state.confirmed.provenance === action.confirmed.provenance ? state : {
|
|
37
|
+
...state,
|
|
38
|
+
confirmed: action.confirmed
|
|
39
|
+
};
|
|
40
|
+
}
|
|
41
|
+
}
|
|
21
42
|
export function BottomTabViewNative({
|
|
22
43
|
state,
|
|
23
44
|
navigation,
|
|
@@ -29,7 +50,22 @@ export function BottomTabViewNative({
|
|
|
29
50
|
colors,
|
|
30
51
|
fonts
|
|
31
52
|
} = useTheme();
|
|
32
|
-
const
|
|
53
|
+
const focusedRoute = state.routes[state.index];
|
|
54
|
+
if (focusedRoute == null) {
|
|
55
|
+
throw new Error(`Couldn't find a route at index ${state.index}.`);
|
|
56
|
+
}
|
|
57
|
+
const focusedRouteKey = focusedRoute.key;
|
|
58
|
+
const [loaded, setLoaded] = React.useState([focusedRouteKey]);
|
|
59
|
+
if (!loaded.includes(focusedRouteKey)) {
|
|
60
|
+
setLoaded([...loaded, focusedRouteKey]);
|
|
61
|
+
}
|
|
62
|
+
const [nativeState, dispatch] = React.useReducer(reducer, {
|
|
63
|
+
lastTransition: null,
|
|
64
|
+
confirmed: {
|
|
65
|
+
routeKey: focusedRouteKey,
|
|
66
|
+
provenance: 0
|
|
67
|
+
}
|
|
68
|
+
});
|
|
33
69
|
const previousRouteKeyRef = React.useRef(focusedRouteKey);
|
|
34
70
|
React.useEffect(() => {
|
|
35
71
|
const previousRouteKey = previousRouteKeyRef.current;
|
|
@@ -44,8 +80,117 @@ export function BottomTabViewNative({
|
|
|
44
80
|
}
|
|
45
81
|
}
|
|
46
82
|
previousRouteKeyRef.current = focusedRouteKey;
|
|
83
|
+
|
|
84
|
+
// We dispatch `popToTop` for unfocused tabs when `popToTopOnBlur` is true
|
|
85
|
+
// So we delay clearing `lastTransition` to keep the screen active for longer
|
|
86
|
+
// This gives time for the action to be handled before the screen is paused,
|
|
87
|
+
const timer = setTimeout(() => {
|
|
88
|
+
dispatch({
|
|
89
|
+
type: 'CLEAR_TRANSITION',
|
|
90
|
+
to: focusedRouteKey
|
|
91
|
+
});
|
|
92
|
+
}, 32);
|
|
93
|
+
return () => clearTimeout(timer);
|
|
47
94
|
}, [descriptors, focusedRouteKey, navigation, state.index, state.routes]);
|
|
48
|
-
const
|
|
95
|
+
const navigate = (route, confirmed) => {
|
|
96
|
+
dispatch({
|
|
97
|
+
type: 'TRACK_TRANSITION',
|
|
98
|
+
confirmed,
|
|
99
|
+
lastTransition: {
|
|
100
|
+
from: previousRouteKeyRef.current,
|
|
101
|
+
to: route.key
|
|
102
|
+
}
|
|
103
|
+
});
|
|
104
|
+
navigation.dispatch({
|
|
105
|
+
...CommonActions.navigate(route.name, route.params),
|
|
106
|
+
target: state.key
|
|
107
|
+
});
|
|
108
|
+
};
|
|
109
|
+
|
|
110
|
+
// Native tabs are the source of truth for the selected tab.
|
|
111
|
+
// JS sends a requested tab with the native provenance it was based on.
|
|
112
|
+
// Native replies with the selected tab and its new provenance.
|
|
113
|
+
const onTabSelected = event => {
|
|
114
|
+
const {
|
|
115
|
+
selectedScreenKey,
|
|
116
|
+
provenance,
|
|
117
|
+
actionOrigin
|
|
118
|
+
} = event.nativeEvent;
|
|
119
|
+
const confirmed = {
|
|
120
|
+
routeKey: selectedScreenKey,
|
|
121
|
+
provenance
|
|
122
|
+
};
|
|
123
|
+
const route = state.routes.find(route => route.key === selectedScreenKey);
|
|
124
|
+
if (!route) {
|
|
125
|
+
console.error(`Received 'tabSelected' for route that doesn't exist: ${selectedScreenKey}`);
|
|
126
|
+
return;
|
|
127
|
+
}
|
|
128
|
+
if (actionOrigin === 'user') {
|
|
129
|
+
const event = navigation.emit({
|
|
130
|
+
type: 'tabPress',
|
|
131
|
+
target: route.key,
|
|
132
|
+
canPreventDefault: true
|
|
133
|
+
});
|
|
134
|
+
if (event.defaultPrevented) {
|
|
135
|
+
throw new Error("Preventing default for 'tabPress' is not supported with native tab bar. Use the 'tabBarSelectionEnabled: false' option instead.");
|
|
136
|
+
}
|
|
137
|
+
}
|
|
138
|
+
if (actionOrigin === 'programmatic-js' || focusedRouteKey === route.key) {
|
|
139
|
+
dispatch({
|
|
140
|
+
type: 'CONFIRM_STATE',
|
|
141
|
+
confirmed
|
|
142
|
+
});
|
|
143
|
+
return;
|
|
144
|
+
}
|
|
145
|
+
navigate(route, confirmed);
|
|
146
|
+
};
|
|
147
|
+
|
|
148
|
+
// If native rejects a JS request, keep native as the source of truth
|
|
149
|
+
// and move JS back to the tab that native says is selected.
|
|
150
|
+
const onTabSelectionRejected = event => {
|
|
151
|
+
const {
|
|
152
|
+
selectedScreenKey,
|
|
153
|
+
provenance
|
|
154
|
+
} = event.nativeEvent;
|
|
155
|
+
const confirmed = {
|
|
156
|
+
routeKey: selectedScreenKey,
|
|
157
|
+
provenance
|
|
158
|
+
};
|
|
159
|
+
const route = state.routes.find(route => route.key === selectedScreenKey);
|
|
160
|
+
if (!route) {
|
|
161
|
+
console.error(`Received 'tabSelectionRejected' for route that doesn't exist: ${selectedScreenKey}`);
|
|
162
|
+
return;
|
|
163
|
+
}
|
|
164
|
+
if (focusedRouteKey === route.key) {
|
|
165
|
+
dispatch({
|
|
166
|
+
type: 'CONFIRM_STATE',
|
|
167
|
+
confirmed
|
|
168
|
+
});
|
|
169
|
+
return;
|
|
170
|
+
}
|
|
171
|
+
navigate(route, confirmed);
|
|
172
|
+
};
|
|
173
|
+
const onTabSelectionPrevented = event => {
|
|
174
|
+
const {
|
|
175
|
+
selectedScreenKey,
|
|
176
|
+
provenance,
|
|
177
|
+
preventedScreenKey
|
|
178
|
+
} = event.nativeEvent;
|
|
179
|
+
const confirmed = {
|
|
180
|
+
routeKey: selectedScreenKey,
|
|
181
|
+
provenance
|
|
182
|
+
};
|
|
183
|
+
dispatch({
|
|
184
|
+
type: 'CONFIRM_STATE',
|
|
185
|
+
confirmed
|
|
186
|
+
});
|
|
187
|
+
navigation.emit({
|
|
188
|
+
type: 'tabPress',
|
|
189
|
+
target: preventedScreenKey,
|
|
190
|
+
canPreventDefault: true
|
|
191
|
+
});
|
|
192
|
+
};
|
|
193
|
+
const currentOptions = descriptors[focusedRouteKey]?.options ?? {};
|
|
49
194
|
const {
|
|
50
195
|
fontFamily = Platform.select({
|
|
51
196
|
ios: fonts.medium.fontFamily,
|
|
@@ -56,14 +201,48 @@ export function BottomTabViewNative({
|
|
|
56
201
|
default: fonts.regular.fontWeight
|
|
57
202
|
}),
|
|
58
203
|
fontSize,
|
|
59
|
-
fontStyle
|
|
204
|
+
fontStyle,
|
|
205
|
+
color: fontColor
|
|
60
206
|
} = currentOptions.tabBarLabelStyle || {};
|
|
61
|
-
const
|
|
62
|
-
const
|
|
207
|
+
const backgroundColor = currentOptions.tabBarStyle?.backgroundColor ?? colors.background;
|
|
208
|
+
const shouldHideTabBar = currentOptions.tabBarStyle?.display === 'none';
|
|
209
|
+
let activeIndicatorColor = currentOptions?.tabBarActiveIndicatorColor;
|
|
210
|
+
let activeTintColor = currentOptions.tabBarActiveTintColor;
|
|
211
|
+
let inactiveTintColor = currentOptions.tabBarInactiveTintColor;
|
|
212
|
+
|
|
213
|
+
// Derive colors based on Material Design guidelines
|
|
214
|
+
// https://m3.material.io/components/navigation-bar/specs
|
|
215
|
+
if (Platform.OS === 'android') {
|
|
216
|
+
switch (getAndroidColorName(backgroundColor)) {
|
|
217
|
+
case 'system_surface_container_light':
|
|
218
|
+
case 'system_surface_container_high_light':
|
|
219
|
+
case 'system_surface_container_highest_light':
|
|
220
|
+
case 'system_surface_container_low_light':
|
|
221
|
+
case 'system_surface_container_lowest_light':
|
|
222
|
+
inactiveTintColor = inactiveTintColor ?? PlatformColor('@android:color/system_on_surface_variant_light');
|
|
223
|
+
activeTintColor = activeTintColor ?? PlatformColor('@android:color/system_on_secondary_container_light');
|
|
224
|
+
activeIndicatorColor = activeIndicatorColor ?? PlatformColor('@android:color/system_secondary_container_light');
|
|
225
|
+
break;
|
|
226
|
+
case 'system_surface_container_dark':
|
|
227
|
+
case 'system_surface_container_high_dark':
|
|
228
|
+
case 'system_surface_container_highest_dark':
|
|
229
|
+
case 'system_surface_container_low_dark':
|
|
230
|
+
case 'system_surface_container_lowest_dark':
|
|
231
|
+
inactiveTintColor = inactiveTintColor ?? PlatformColor('@android:color/system_on_surface_variant_dark');
|
|
232
|
+
activeTintColor = activeTintColor ?? PlatformColor('@android:color/system_on_secondary_container_dark');
|
|
233
|
+
activeIndicatorColor = activeIndicatorColor ?? PlatformColor('@android:color/system_secondary_container_dark');
|
|
234
|
+
break;
|
|
235
|
+
}
|
|
236
|
+
}
|
|
237
|
+
inactiveTintColor = inactiveTintColor ?? Platform.select({
|
|
63
238
|
ios: PlatformColor('label'),
|
|
64
239
|
default: colors.text
|
|
65
240
|
});
|
|
66
|
-
|
|
241
|
+
activeTintColor = activeTintColor ?? colors.primary;
|
|
242
|
+
activeIndicatorColor = activeIndicatorColor ?? Platform.select({
|
|
243
|
+
android: Color(activeTintColor)?.alpha(0.075).string(),
|
|
244
|
+
default: undefined
|
|
245
|
+
});
|
|
67
246
|
const onTransitionStart = ({
|
|
68
247
|
route
|
|
69
248
|
}) => {
|
|
@@ -95,60 +274,45 @@ export function BottomTabViewNative({
|
|
|
95
274
|
flexDirection: tabBarPosition === 'left' || tabBarPosition === 'right' ? 'row' : 'column'
|
|
96
275
|
},
|
|
97
276
|
children: [tabBarPosition === 'top' || tabBarPosition === 'left' ? tabBarElement : null, /*#__PURE__*/_jsx(Tabs.Host, {
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
}
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
106
|
-
|
|
107
|
-
|
|
108
|
-
|
|
109
|
-
|
|
110
|
-
|
|
111
|
-
|
|
112
|
-
|
|
113
|
-
|
|
114
|
-
|
|
115
|
-
|
|
116
|
-
|
|
117
|
-
|
|
118
|
-
tabBarItemRippleColor: currentOptions?.tabBarRippleColor,
|
|
119
|
-
experimentalControlNavigationStateInJS: false,
|
|
120
|
-
onNativeFocusChange: e => {
|
|
121
|
-
const route = state.routes.find(route => route.key === e.nativeEvent.tabKey);
|
|
122
|
-
if (route) {
|
|
123
|
-
const event = navigation.emit({
|
|
124
|
-
type: 'tabPress',
|
|
125
|
-
target: route.key,
|
|
126
|
-
canPreventDefault: true
|
|
127
|
-
});
|
|
128
|
-
if (event.defaultPrevented) {
|
|
129
|
-
throw new Error("Preventing default for 'tabPress' is not supported with native tab bar.");
|
|
130
|
-
}
|
|
131
|
-
const isFocused = state.index === state.routes.findIndex(r => r.key === route.key);
|
|
132
|
-
if (!isFocused) {
|
|
133
|
-
navigation.dispatch({
|
|
134
|
-
...CommonActions.navigate(route.name, route.params),
|
|
135
|
-
target: state.key
|
|
136
|
-
});
|
|
137
|
-
}
|
|
138
|
-
}
|
|
277
|
+
navStateRequest: {
|
|
278
|
+
selectedScreenKey: focusedRouteKey,
|
|
279
|
+
baseProvenance: nativeState.confirmed.provenance
|
|
280
|
+
},
|
|
281
|
+
rejectStaleNavStateUpdates: true,
|
|
282
|
+
onTabSelected: onTabSelected,
|
|
283
|
+
onTabSelectionRejected: onTabSelectionRejected,
|
|
284
|
+
onTabSelectionPrevented: onTabSelectionPrevented,
|
|
285
|
+
tabBarHidden: hasCustomTabBar || shouldHideTabBar,
|
|
286
|
+
colorScheme: dark ? 'dark' : 'light',
|
|
287
|
+
nativeContainerStyle: {
|
|
288
|
+
backgroundColor: colors.background
|
|
289
|
+
},
|
|
290
|
+
ios: {
|
|
291
|
+
bottomAccessory: bottomAccessory ? environment => bottomAccessory({
|
|
292
|
+
placement: environment
|
|
293
|
+
}) : undefined,
|
|
294
|
+
tabBarControllerMode,
|
|
295
|
+
tabBarMinimizeBehavior,
|
|
296
|
+
tabBarTintColor: activeTintColor
|
|
139
297
|
},
|
|
140
298
|
children: state.routes.map((route, index) => {
|
|
299
|
+
const descriptor = descriptors[route.key];
|
|
300
|
+
if (descriptor == null) {
|
|
301
|
+
throw new Error(`Couldn't find a descriptor for route '${route.key}'.`);
|
|
302
|
+
}
|
|
141
303
|
const {
|
|
142
304
|
options,
|
|
143
305
|
render,
|
|
144
306
|
navigation
|
|
145
|
-
} =
|
|
307
|
+
} = descriptor;
|
|
146
308
|
const isFocused = state.index === index;
|
|
147
309
|
const isPreloaded = state.preloadedRouteKeys.includes(route.key);
|
|
148
310
|
const {
|
|
149
311
|
title,
|
|
150
|
-
lazy =
|
|
312
|
+
lazy = false,
|
|
313
|
+
inactiveBehavior = 'pause',
|
|
151
314
|
tabBarLabel,
|
|
315
|
+
tabBarSelectionEnabled,
|
|
152
316
|
tabBarBadgeStyle,
|
|
153
317
|
tabBarIcon,
|
|
154
318
|
tabBarBadge,
|
|
@@ -158,7 +322,7 @@ export function BottomTabViewNative({
|
|
|
158
322
|
tabBarAccessibilityLabel,
|
|
159
323
|
tabBarButtonTestID,
|
|
160
324
|
sceneStyle,
|
|
161
|
-
|
|
325
|
+
overrideScrollViewContentInsetAdjustmentBehavior
|
|
162
326
|
} = options;
|
|
163
327
|
const {
|
|
164
328
|
backgroundColor: tabBarBackgroundColor,
|
|
@@ -171,14 +335,25 @@ export function BottomTabViewNative({
|
|
|
171
335
|
label: tabBarLabel,
|
|
172
336
|
title
|
|
173
337
|
}, route.name);
|
|
338
|
+
const badgeBackgroundColor = tabBarBadgeStyle?.backgroundColor ?? colors.notification;
|
|
339
|
+
const badgeTextColor = tabBarBadgeStyle?.color ?? Color.foreground(badgeBackgroundColor);
|
|
174
340
|
const tabItemAppearance = {
|
|
175
341
|
tabBarItemTitleFontFamily: fontFamily,
|
|
176
342
|
tabBarItemTitleFontSize: fontSize,
|
|
177
343
|
tabBarItemTitleFontWeight: fontWeight,
|
|
178
|
-
tabBarItemTitleFontStyle: fontStyle
|
|
344
|
+
tabBarItemTitleFontStyle: fontStyle,
|
|
345
|
+
tabBarItemTitleFontColor: inactiveTintColor ?? fontColor,
|
|
346
|
+
tabBarItemIconColor: inactiveTintColor,
|
|
347
|
+
tabBarItemBadgeBackgroundColor: badgeBackgroundColor
|
|
348
|
+
};
|
|
349
|
+
const normalTabItemAppearance = {
|
|
350
|
+
tabBarItemTitleFontColor: inactiveTintColor ?? fontColor,
|
|
351
|
+
tabBarItemIconColor: inactiveTintColor
|
|
352
|
+
};
|
|
353
|
+
const selectedTabItemAppearance = {
|
|
354
|
+
tabBarItemTitleFontColor: activeTintColor,
|
|
355
|
+
tabBarItemIconColor: activeTintColor
|
|
179
356
|
};
|
|
180
|
-
const badgeBackgroundColor = tabBarBadgeStyle?.backgroundColor ?? colors.notification;
|
|
181
|
-
const badgeTextColor = tabBarBadgeStyle?.color ?? (Color(badgeBackgroundColor)?.isLight() ? 'black' : 'white');
|
|
182
357
|
const getIcon = selected => {
|
|
183
358
|
if (typeof tabBarIcon === 'function') {
|
|
184
359
|
const result = tabBarIcon({
|
|
@@ -198,8 +373,15 @@ export function BottomTabViewNative({
|
|
|
198
373
|
}
|
|
199
374
|
return undefined;
|
|
200
375
|
};
|
|
201
|
-
|
|
202
|
-
|
|
376
|
+
|
|
377
|
+
// An error is thrown for React Elements in `getIcon`
|
|
378
|
+
// So we only call it when we actually render a native tab bar
|
|
379
|
+
const icon = hasCustomTabBar ? undefined : getIcon(false);
|
|
380
|
+
const selectedIcon = hasCustomTabBar ? undefined : getIcon(true);
|
|
381
|
+
|
|
382
|
+
// For preloaded screens and if lazy is false,
|
|
383
|
+
// Keep them active so that the effects can run
|
|
384
|
+
const isActive = inactiveBehavior === 'none' || isPreloaded || nativeState.lastTransition?.from === route.key || nativeState.lastTransition?.to === route.key || lazy === false && !loaded.includes(route.key);
|
|
203
385
|
return /*#__PURE__*/_jsx(Tabs.Screen, {
|
|
204
386
|
onWillAppear: () => onTransitionStart({
|
|
205
387
|
route
|
|
@@ -207,40 +389,14 @@ export function BottomTabViewNative({
|
|
|
207
389
|
onDidAppear: () => onTransitionEnd({
|
|
208
390
|
route
|
|
209
391
|
}),
|
|
210
|
-
|
|
211
|
-
icon: icon,
|
|
212
|
-
selectedIcon: selectedIcon?.ios ?? selectedIcon?.shared,
|
|
213
|
-
tabBarItemBadgeBackgroundColor: badgeBackgroundColor,
|
|
214
|
-
tabBarItemBadgeTextColor: badgeTextColor,
|
|
392
|
+
screenKey: route.key,
|
|
215
393
|
tabBarItemAccessibilityLabel: tabBarAccessibilityLabel,
|
|
216
394
|
tabBarItemTestID: tabBarButtonTestID,
|
|
395
|
+
preventNativeSelection: tabBarSelectionEnabled === false,
|
|
217
396
|
badgeValue: tabBarBadge?.toString(),
|
|
218
|
-
systemItem: tabBarSystemItem,
|
|
219
|
-
isFocused: isFocused,
|
|
220
397
|
title: tabTitle,
|
|
221
|
-
|
|
222
|
-
|
|
223
|
-
bottom: scrollEdgeEffects?.bottom === 'auto' ? 'automatic' : scrollEdgeEffects?.bottom,
|
|
224
|
-
left: scrollEdgeEffects?.left === 'auto' ? 'automatic' : scrollEdgeEffects?.left,
|
|
225
|
-
right: scrollEdgeEffects?.right === 'auto' ? 'automatic' : scrollEdgeEffects?.right
|
|
226
|
-
}
|
|
227
|
-
// FIXME: if this is not provided, ScrollView on lazy tabs glitches on iOS 18
|
|
228
|
-
// For now we provide an empty object before adding proper support
|
|
229
|
-
,
|
|
230
|
-
scrollEdgeAppearance: {},
|
|
231
|
-
standardAppearance: {
|
|
232
|
-
tabBarBackgroundColor,
|
|
233
|
-
tabBarShadowColor,
|
|
234
|
-
tabBarBlurEffect,
|
|
235
|
-
stacked: {
|
|
236
|
-
normal: tabItemAppearance
|
|
237
|
-
},
|
|
238
|
-
inline: {
|
|
239
|
-
normal: tabItemAppearance
|
|
240
|
-
},
|
|
241
|
-
compactInline: {
|
|
242
|
-
normal: tabItemAppearance
|
|
243
|
-
}
|
|
398
|
+
nativeContainerStyle: {
|
|
399
|
+
backgroundColor: colors.background
|
|
244
400
|
},
|
|
245
401
|
specialEffects: {
|
|
246
402
|
repeatedTabSelection: {
|
|
@@ -248,27 +404,89 @@ export function BottomTabViewNative({
|
|
|
248
404
|
scrollToTop: true
|
|
249
405
|
}
|
|
250
406
|
},
|
|
251
|
-
|
|
252
|
-
|
|
253
|
-
|
|
254
|
-
|
|
255
|
-
|
|
256
|
-
|
|
257
|
-
|
|
258
|
-
|
|
259
|
-
|
|
260
|
-
|
|
261
|
-
|
|
407
|
+
android: {
|
|
408
|
+
icon: icon?.android ?? icon?.shared,
|
|
409
|
+
selectedIcon: selectedIcon?.android ?? selectedIcon?.shared,
|
|
410
|
+
standardAppearance: {
|
|
411
|
+
tabBarBackgroundColor: tabBarBackgroundColor ?? backgroundColor,
|
|
412
|
+
tabBarItemRippleColor: currentOptions?.tabBarRippleColor,
|
|
413
|
+
tabBarItemLabelVisibilityMode: currentOptions?.tabBarLabelVisibilityMode,
|
|
414
|
+
normal: normalTabItemAppearance,
|
|
415
|
+
selected: selectedTabItemAppearance,
|
|
416
|
+
tabBarItemActiveIndicatorColor: activeIndicatorColor,
|
|
417
|
+
tabBarItemActiveIndicatorEnabled: currentOptions?.tabBarActiveIndicatorEnabled,
|
|
418
|
+
tabBarItemTitleFontFamily: fontFamily,
|
|
419
|
+
tabBarItemTitleFontWeight: fontWeight,
|
|
420
|
+
tabBarItemTitleSmallLabelFontSize: fontSize,
|
|
421
|
+
tabBarItemTitleLargeLabelFontSize: fontSize,
|
|
422
|
+
tabBarItemTitleFontStyle: fontStyle,
|
|
423
|
+
tabBarItemBadgeBackgroundColor: badgeBackgroundColor,
|
|
424
|
+
tabBarItemBadgeTextColor: badgeTextColor
|
|
425
|
+
}
|
|
426
|
+
},
|
|
427
|
+
ios: {
|
|
428
|
+
icon: icon?.ios ?? icon?.shared,
|
|
429
|
+
selectedIcon: selectedIcon?.ios ?? selectedIcon?.shared,
|
|
430
|
+
systemItem: tabBarSystemItem,
|
|
431
|
+
scrollEdgeAppearance: {
|
|
432
|
+
tabBarBackgroundColor,
|
|
433
|
+
tabBarShadowColor,
|
|
434
|
+
tabBarBlurEffect,
|
|
435
|
+
stacked: {
|
|
436
|
+
normal: tabItemAppearance
|
|
437
|
+
},
|
|
438
|
+
inline: {
|
|
439
|
+
normal: tabItemAppearance
|
|
440
|
+
},
|
|
441
|
+
compactInline: {
|
|
442
|
+
normal: tabItemAppearance
|
|
443
|
+
}
|
|
444
|
+
},
|
|
445
|
+
standardAppearance: {
|
|
446
|
+
tabBarBackgroundColor,
|
|
447
|
+
tabBarShadowColor,
|
|
448
|
+
tabBarBlurEffect,
|
|
449
|
+
stacked: {
|
|
450
|
+
normal: tabItemAppearance
|
|
451
|
+
},
|
|
452
|
+
inline: {
|
|
453
|
+
normal: tabItemAppearance
|
|
454
|
+
},
|
|
455
|
+
compactInline: {
|
|
456
|
+
normal: tabItemAppearance
|
|
457
|
+
}
|
|
458
|
+
},
|
|
459
|
+
overrideScrollViewContentInsetAdjustmentBehavior
|
|
460
|
+
},
|
|
461
|
+
children: /*#__PURE__*/_jsx(Deferred, {
|
|
462
|
+
lazy: lazy,
|
|
463
|
+
visible: isFocused || isPreloaded || loaded.includes(route.key),
|
|
464
|
+
children: /*#__PURE__*/_jsx(ActivityView, {
|
|
465
|
+
mode: isFocused ? 'normal' : isActive ? 'inert' : 'paused',
|
|
466
|
+
visible:
|
|
467
|
+
// We don't need to hide the content since it's handled natively
|
|
468
|
+
// Hiding may also cause flash due to lag after native tab switch
|
|
469
|
+
// So we leave it always visible
|
|
470
|
+
true,
|
|
471
|
+
style: StyleSheet.absoluteFill,
|
|
472
|
+
children: /*#__PURE__*/_jsx(ScreenContent, {
|
|
262
473
|
isFocused: isFocused,
|
|
263
|
-
|
|
264
|
-
|
|
265
|
-
|
|
266
|
-
|
|
267
|
-
|
|
474
|
+
route: route,
|
|
475
|
+
navigation: navigation,
|
|
476
|
+
options: options,
|
|
477
|
+
style: sceneStyle,
|
|
478
|
+
children: /*#__PURE__*/_jsx(AnimatedScreenContent, {
|
|
479
|
+
isFocused: isFocused,
|
|
480
|
+
children: /*#__PURE__*/_jsx(BottomTabBarHeightContext.Provider, {
|
|
481
|
+
value: 0,
|
|
482
|
+
children: /*#__PURE__*/_jsx(NavigationMetaContext.Provider, {
|
|
483
|
+
value: meta,
|
|
484
|
+
children: render()
|
|
485
|
+
})
|
|
268
486
|
})
|
|
269
487
|
})
|
|
270
488
|
})
|
|
271
|
-
})
|
|
489
|
+
}, route.key)
|
|
272
490
|
})
|
|
273
491
|
}, route.key);
|
|
274
492
|
})
|
|
@@ -314,7 +532,10 @@ function getPlatformIcon(icon) {
|
|
|
314
532
|
android: {
|
|
315
533
|
type: 'imageSource',
|
|
316
534
|
imageSource: MaterialSymbol.getImageSource({
|
|
317
|
-
name: icon.name
|
|
535
|
+
name: icon.name,
|
|
536
|
+
variant: icon.variant,
|
|
537
|
+
weight: icon.weight,
|
|
538
|
+
size: ICON_SIZE
|
|
318
539
|
})
|
|
319
540
|
},
|
|
320
541
|
shared: undefined
|
|
@@ -334,16 +555,6 @@ function getPlatformIcon(icon) {
|
|
|
334
555
|
imageSource: icon.source
|
|
335
556
|
}
|
|
336
557
|
};
|
|
337
|
-
case 'resource':
|
|
338
|
-
return {
|
|
339
|
-
// TODO: support xcasset once new version of react-native-screens is released
|
|
340
|
-
ios: undefined,
|
|
341
|
-
android: {
|
|
342
|
-
type: 'drawableResource',
|
|
343
|
-
name: icon.name
|
|
344
|
-
},
|
|
345
|
-
shared: undefined
|
|
346
|
-
};
|
|
347
558
|
default:
|
|
348
559
|
{
|
|
349
560
|
const _exhaustiveCheck = icon;
|
|
@@ -351,4 +562,11 @@ function getPlatformIcon(icon) {
|
|
|
351
562
|
}
|
|
352
563
|
}
|
|
353
564
|
}
|
|
565
|
+
function getAndroidColorName(color) {
|
|
566
|
+
const value = color;
|
|
567
|
+
if (typeof value === 'object' && value != null && 'resource_paths' in value && Array.isArray(value.resource_paths) && typeof value.resource_paths[0] === 'string') {
|
|
568
|
+
return value.resource_paths[0].replace('@android:color/', '');
|
|
569
|
+
}
|
|
570
|
+
return null;
|
|
571
|
+
}
|
|
354
572
|
//# sourceMappingURL=BottomTabViewNativeImpl.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["getLabel","Color","Lazy","SafeAreaProviderCompat","CommonActions","MaterialSymbol","NavigationMetaContext","StackActions","useTheme","React","Animated","Platform","PlatformColor","Tabs","BottomTabAnimationContext","BottomTabBarHeightContext","useTabBarPosition","ScreenContent","jsx","_jsx","jsxs","_jsxs","ICON_SIZE","select","ios","default","meta","type","BottomTabViewNative","state","navigation","descriptors","tabBar","dark","colors","fonts","focusedRouteKey","routes","index","key","previousRouteKeyRef","useRef","useEffect","previousRouteKey","current","options","popToTopOnBlur","prevRoute","find","route","popToTopAction","popToTop","target","dispatch","currentOptions","fontFamily","medium","regular","fontWeight","fontSize","fontStyle","tabBarLabelStyle","activeTintColor","tabBarActiveTintColor","primary","inactiveTintColor","tabBarInactiveTintColor","text","activeIndicatorColor","tabBarActiveIndicatorColor","alpha","string","onTransitionStart","emit","onTransitionEnd","tabBarPosition","hasCustomTabBar","tabBarElement","tabBarControllerMode","tabBarMinimizeBehavior","bottomAccessory","style","flexDirection","children","Host","tabBarHidden","environment","placement","undefined","tabBarItemLabelVisibilityMode","tabBarLabelVisibilityMode","tabBarTintColor","tabBarItemIconColor","tabBarItemIconColorActive","tabBarItemTitleFontColor","tabBarItemTitleFontColorActive","tabBarItemTitleFontFamily","tabBarItemTitleFontWeight","tabBarItemTitleFontSize","tabBarItemTitleFontSizeActive","tabBarItemTitleFontStyle","tabBarBackgroundColor","tabBarStyle","backgroundColor","card","tabBarItemActiveIndicatorColor","tabBarItemActiveIndicatorEnabled","tabBarActiveIndicatorEnabled","tabBarItemRippleColor","tabBarRippleColor","experimentalControlNavigationStateInJS","onNativeFocusChange","e","nativeEvent","tabKey","event","canPreventDefault","defaultPrevented","Error","isFocused","findIndex","r","navigate","name","params","map","render","isPreloaded","preloadedRouteKeys","includes","title","lazy","tabBarLabel","tabBarBadgeStyle","tabBarIcon","tabBarBadge","tabBarSystemItem","tabBarBlurEffect","tabBarAccessibilityLabel","tabBarButtonTestID","sceneStyle","scrollEdgeEffects","shadowColor","tabBarShadowColor","tabTitle","OS","label","tabItemAppearance","badgeBackgroundColor","notification","badgeTextColor","color","isLight","getIcon","selected","result","focused","size","isValidElement","getPlatformIcon","icon","selectedIcon","Screen","onWillAppear","onDidAppear","shared","tabBarItemBadgeBackgroundColor","tabBarItemBadgeTextColor","tabBarItemAccessibilityLabel","tabBarItemTestID","badgeValue","toString","systemItem","top","bottom","left","right","scrollEdgeAppearance","standardAppearance","stacked","normal","inline","compactInline","specialEffects","repeatedTabSelection","popToRoot","scrollToTop","experimental_userInterfaceStyle","enabled","visible","AnimatedScreenContent","Provider","value","progress","useState","Value","useLayoutEffect","setValue","interpolationProps","useMemo","android","imageSource","getImageSource","tinted","source","templateSource","_exhaustiveCheck"],"sourceRoot":"../../../src","sources":["views/BottomTabViewNativeImpl.tsx"],"mappings":"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","ignoreList":[]}
|
|
1
|
+
{"version":3,"names":["getLabel","ActivityView","Color","SafeAreaProviderCompat","CommonActions","MaterialSymbol","NavigationMetaContext","StackActions","useTheme","React","Animated","Platform","PlatformColor","StyleSheet","Tabs","BottomTabAnimationContext","BottomTabBarHeightContext","useTabBarPosition","Deferred","ScreenContent","jsx","_jsx","jsxs","_jsxs","ICON_SIZE","select","ios","default","meta","type","reducer","state","action","lastTransition","confirmed","to","routeKey","provenance","BottomTabViewNative","navigation","descriptors","tabBar","dark","colors","fonts","focusedRoute","routes","index","Error","focusedRouteKey","key","loaded","setLoaded","useState","includes","nativeState","dispatch","useReducer","previousRouteKeyRef","useRef","useEffect","previousRouteKey","current","options","popToTopOnBlur","prevRoute","find","route","popToTopAction","popToTop","target","timer","setTimeout","clearTimeout","navigate","from","name","params","onTabSelected","event","selectedScreenKey","actionOrigin","nativeEvent","console","error","emit","canPreventDefault","defaultPrevented","onTabSelectionRejected","onTabSelectionPrevented","preventedScreenKey","currentOptions","fontFamily","medium","regular","fontWeight","fontSize","fontStyle","color","fontColor","tabBarLabelStyle","backgroundColor","tabBarStyle","background","shouldHideTabBar","display","activeIndicatorColor","tabBarActiveIndicatorColor","activeTintColor","tabBarActiveTintColor","inactiveTintColor","tabBarInactiveTintColor","OS","getAndroidColorName","text","primary","android","alpha","string","undefined","onTransitionStart","onTransitionEnd","tabBarPosition","hasCustomTabBar","tabBarElement","tabBarControllerMode","tabBarMinimizeBehavior","bottomAccessory","style","flexDirection","children","Host","navStateRequest","baseProvenance","rejectStaleNavStateUpdates","tabBarHidden","colorScheme","nativeContainerStyle","environment","placement","tabBarTintColor","map","descriptor","render","isFocused","isPreloaded","preloadedRouteKeys","title","lazy","inactiveBehavior","tabBarLabel","tabBarSelectionEnabled","tabBarBadgeStyle","tabBarIcon","tabBarBadge","tabBarSystemItem","tabBarBlurEffect","tabBarAccessibilityLabel","tabBarButtonTestID","sceneStyle","overrideScrollViewContentInsetAdjustmentBehavior","tabBarBackgroundColor","shadowColor","tabBarShadowColor","tabTitle","label","badgeBackgroundColor","notification","badgeTextColor","foreground","tabItemAppearance","tabBarItemTitleFontFamily","tabBarItemTitleFontSize","tabBarItemTitleFontWeight","tabBarItemTitleFontStyle","tabBarItemTitleFontColor","tabBarItemIconColor","tabBarItemBadgeBackgroundColor","normalTabItemAppearance","selectedTabItemAppearance","getIcon","selected","result","focused","size","isValidElement","getPlatformIcon","icon","selectedIcon","isActive","Screen","onWillAppear","onDidAppear","screenKey","tabBarItemAccessibilityLabel","tabBarItemTestID","preventNativeSelection","badgeValue","toString","specialEffects","repeatedTabSelection","popToRoot","scrollToTop","shared","standardAppearance","tabBarItemRippleColor","tabBarRippleColor","tabBarItemLabelVisibilityMode","tabBarLabelVisibilityMode","normal","tabBarItemActiveIndicatorColor","tabBarItemActiveIndicatorEnabled","tabBarActiveIndicatorEnabled","tabBarItemTitleSmallLabelFontSize","tabBarItemTitleLargeLabelFontSize","tabBarItemBadgeTextColor","systemItem","scrollEdgeAppearance","stacked","inline","compactInline","visible","mode","absoluteFill","AnimatedScreenContent","Provider","value","progress","Value","useLayoutEffect","setValue","interpolationProps","useMemo","imageSource","getImageSource","variant","weight","tinted","source","templateSource","_exhaustiveCheck","Array","isArray","resource_paths","replace"],"sourceRoot":"../../../src","sources":["views/BottomTabViewNativeImpl.tsx"],"mappings":";;AAAA,SAASA,QAAQ,QAAmB,4BAA4B;AAChE,SACEC,YAAY,EACZC,KAAK,EACLC,sBAAsB,QACjB,qCAAqC;AAC5C,SACEC,aAAa,EACbC,cAAc,EACdC,qBAAqB,EAGrBC,YAAY,EAEZC,QAAQ,QACH,0BAA0B;AACjC,OAAO,KAAKC,KAAK,MAAM,OAAO;AAC9B,SACEC,QAAQ,EAGRC,QAAQ,EACRC,aAAa,EACbC,UAAU,QACL,cAAc;AACrB,SAIEC,IAAI,QAMC,sBAAsB;AAQ7B,SAASC,yBAAyB,QAAQ,uCAAoC;AAC9E,SAASC,yBAAyB,QAAQ,uCAAoC;AAC9E,SAASC,iBAAiB,QAAQ,+BAA4B;AAC9D,SAASC,QAAQ,QAAQ,eAAY;AACrC,SAASC,aAAa,QAAQ,oBAAiB;AAAC,SAAAC,GAAA,IAAAC,IAAA,EAAAC,IAAA,IAAAC,KAAA;AAuChD,MAAMC,SAAS,GAAGb,QAAQ,CAACc,MAAM,CAAC;EAChCC,GAAG,EAAE,EAAE;EACPC,OAAO,EAAE;AACX,CAAC,CAAC;AAEF,MAAMC,IAAI,GAAG;EACXC,IAAI,EAAE;AACR,CAAC;AAED,SAASC,OAAOA,CAACC,KAAkB,EAAEC,MAAoB,EAAe;EACtE,QAAQA,MAAM,CAACH,IAAI;IACjB,KAAK,kBAAkB;MACrB,OAAO;QACL,GAAGE,KAAK;QACRE,cAAc,EAAED,MAAM,CAACC,cAAc;QACrCC,SAAS,EAAEF,MAAM,CAACE;MACpB,CAAC;IACH,KAAK,kBAAkB;MACrB,OAAOH,KAAK,CAACE,cAAc,EAAEE,EAAE,KAAKH,MAAM,CAACG,EAAE,GACzC;QACE,GAAGJ,KAAK;QACRE,cAAc,EAAE;MAClB,CAAC,GACDF,KAAK;IACX,KAAK,eAAe;MAClB,OAAOA,KAAK,CAACG,SAAS,CAACE,QAAQ,KAAKJ,MAAM,CAACE,SAAS,CAACE,QAAQ,IAC3DL,KAAK,CAACG,SAAS,CAACG,UAAU,KAAKL,MAAM,CAACE,SAAS,CAACG,UAAU,GACxDN,KAAK,GACL;QACE,GAAGA,KAAK;QACRG,SAAS,EAAEF,MAAM,CAACE;MACpB,CAAC;EACT;AACF;AAEA,OAAO,SAASI,mBAAmBA,CAAC;EAClCP,KAAK;EACLQ,UAAU;EACVC,WAAW;EACXC;AACK,CAAC,EAAE;EACR,MAAM;IAAEC,IAAI;IAAEC,MAAM;IAAEC;EAAM,CAAC,GAAGpC,QAAQ,CAAC,CAAC;EAE1C,MAAMqC,YAAY,GAAGd,KAAK,CAACe,MAAM,CAACf,KAAK,CAACgB,KAAK,CAAC;EAE9C,IAAIF,YAAY,IAAI,IAAI,EAAE;IACxB,MAAM,IAAIG,KAAK,CAAC,kCAAkCjB,KAAK,CAACgB,KAAK,GAAG,CAAC;EACnE;EAEA,MAAME,eAAe,GAAGJ,YAAY,CAACK,GAAG;EAExC,MAAM,CAACC,MAAM,EAAEC,SAAS,CAAC,GAAG3C,KAAK,CAAC4C,QAAQ,CAAC,CAACJ,eAAe,CAAC,CAAC;EAE7D,IAAI,CAACE,MAAM,CAACG,QAAQ,CAACL,eAAe,CAAC,EAAE;IACrCG,SAAS,CAAC,CAAC,GAAGD,MAAM,EAAEF,eAAe,CAAC,CAAC;EACzC;EAEA,MAAM,CAACM,WAAW,EAAEC,QAAQ,CAAC,GAAG/C,KAAK,CAACgD,UAAU,CAAC3B,OAAO,EAAE;IACxDG,cAAc,EAAE,IAAI;IACpBC,SAAS,EAAE;MACTE,QAAQ,EAAEa,eAAe;MACzBZ,UAAU,EAAE;IACd;EACF,CAAC,CAAC;EAEF,MAAMqB,mBAAmB,GAAGjD,KAAK,CAACkD,MAAM,CAACV,eAAe,CAAC;EAEzDxC,KAAK,CAACmD,SAAS,CAAC,MAAM;IACpB,MAAMC,gBAAgB,GAAGH,mBAAmB,CAACI,OAAO;IAEpD,IACED,gBAAgB,KAAKZ,eAAe,IACpCT,WAAW,CAACqB,gBAAgB,CAAC,EAAEE,OAAO,CAACC,cAAc,EACrD;MACA,MAAMC,SAAS,GAAGlC,KAAK,CAACe,MAAM,CAACoB,IAAI,CAChCC,KAAK,IAAKA,KAAK,CAACjB,GAAG,KAAKW,gBAC3B,CAAC;MAED,IAAII,SAAS,EAAElC,KAAK,EAAEF,IAAI,KAAK,OAAO,IAAIoC,SAAS,CAAClC,KAAK,CAACmB,GAAG,EAAE;QAC7D,MAAMkB,cAAc,GAAG;UACrB,GAAG7D,YAAY,CAAC8D,QAAQ,CAAC,CAAC;UAC1BC,MAAM,EAAEL,SAAS,CAAClC,KAAK,CAACmB;QAC1B,CAAC;QAEDX,UAAU,CAACiB,QAAQ,CAACY,cAAc,CAAC;MACrC;IACF;IAEAV,mBAAmB,CAACI,OAAO,GAAGb,eAAe;;IAE7C;IACA;IACA;IACA,MAAMsB,KAAK,GAAGC,UAAU,CAAC,MAAM;MAC7BhB,QAAQ,CAAC;QACP3B,IAAI,EAAE,kBAAkB;QACxBM,EAAE,EAAEc;MACN,CAAC,CAAC;IACJ,CAAC,EAAE,EAAE,CAAC;IAEN,OAAO,MAAMwB,YAAY,CAACF,KAAK,CAAC;EAClC,CAAC,EAAE,CAAC/B,WAAW,EAAES,eAAe,EAAEV,UAAU,EAAER,KAAK,CAACgB,KAAK,EAAEhB,KAAK,CAACe,MAAM,CAAC,CAAC;EAEzE,MAAM4B,QAAQ,GAAGA,CACfP,KAAoC,EACpCjC,SAAyB,KACtB;IACHsB,QAAQ,CAAC;MACP3B,IAAI,EAAE,kBAAkB;MACxBK,SAAS;MACTD,cAAc,EAAE;QACd0C,IAAI,EAAEjB,mBAAmB,CAACI,OAAO;QACjC3B,EAAE,EAAEgC,KAAK,CAACjB;MACZ;IACF,CAAC,CAAC;IAEFX,UAAU,CAACiB,QAAQ,CAAC;MAClB,GAAGpD,aAAa,CAACsE,QAAQ,CAACP,KAAK,CAACS,IAAI,EAAET,KAAK,CAACU,MAAM,CAAC;MACnDP,MAAM,EAAEvC,KAAK,CAACmB;IAChB,CAAC,CAAC;EACJ,CAAC;;EAED;EACA;EACA;EACA,MAAM4B,aAAa,GAAIC,KAA6C,IAAK;IACvE,MAAM;MAAEC,iBAAiB;MAAE3C,UAAU;MAAE4C;IAAa,CAAC,GAAGF,KAAK,CAACG,WAAW;IAEzE,MAAMhD,SAAS,GAAG;MAChBE,QAAQ,EAAE4C,iBAAiB;MAC3B3C;IACF,CAAC;IAED,MAAM8B,KAAK,GAAGpC,KAAK,CAACe,MAAM,CAACoB,IAAI,CAAEC,KAAK,IAAKA,KAAK,CAACjB,GAAG,KAAK8B,iBAAiB,CAAC;IAE3E,IAAI,CAACb,KAAK,EAAE;MACVgB,OAAO,CAACC,KAAK,CACX,wDAAwDJ,iBAAiB,EAC3E,CAAC;MAED;IACF;IAEA,IAAIC,YAAY,KAAK,MAAM,EAAE;MAC3B,MAAMF,KAAK,GAAGxC,UAAU,CAAC8C,IAAI,CAAC;QAC5BxD,IAAI,EAAE,UAAU;QAChByC,MAAM,EAAEH,KAAK,CAACjB,GAAG;QACjBoC,iBAAiB,EAAE;MACrB,CAAC,CAAC;MAEF,IAAIP,KAAK,CAACQ,gBAAgB,EAAE;QAC1B,MAAM,IAAIvC,KAAK,CACb,iIACF,CAAC;MACH;IACF;IAEA,IAAIiC,YAAY,KAAK,iBAAiB,IAAIhC,eAAe,KAAKkB,KAAK,CAACjB,GAAG,EAAE;MACvEM,QAAQ,CAAC;QACP3B,IAAI,EAAE,eAAe;QACrBK;MACF,CAAC,CAAC;MAEF;IACF;IAEAwC,QAAQ,CAACP,KAAK,EAAEjC,SAAS,CAAC;EAC5B,CAAC;;EAED;EACA;EACA,MAAMsD,sBAAsB,GAC1BT,KAAsD,IACnD;IACH,MAAM;MAAEC,iBAAiB;MAAE3C;IAAW,CAAC,GAAG0C,KAAK,CAACG,WAAW;IAE3D,MAAMhD,SAAS,GAAG;MAChBE,QAAQ,EAAE4C,iBAAiB;MAC3B3C;IACF,CAAC;IAED,MAAM8B,KAAK,GAAGpC,KAAK,CAACe,MAAM,CAACoB,IAAI,CAAEC,KAAK,IAAKA,KAAK,CAACjB,GAAG,KAAK8B,iBAAiB,CAAC;IAE3E,IAAI,CAACb,KAAK,EAAE;MACVgB,OAAO,CAACC,KAAK,CACX,iEAAiEJ,iBAAiB,EACpF,CAAC;MAED;IACF;IAEA,IAAI/B,eAAe,KAAKkB,KAAK,CAACjB,GAAG,EAAE;MACjCM,QAAQ,CAAC;QACP3B,IAAI,EAAE,eAAe;QACrBK;MACF,CAAC,CAAC;MAEF;IACF;IAEAwC,QAAQ,CAACP,KAAK,EAAEjC,SAAS,CAAC;EAC5B,CAAC;EAED,MAAMuD,uBAAuB,GAC3BV,KAAuD,IACpD;IACH,MAAM;MAAEC,iBAAiB;MAAE3C,UAAU;MAAEqD;IAAmB,CAAC,GACzDX,KAAK,CAACG,WAAW;IAEnB,MAAMhD,SAAS,GAAG;MAChBE,QAAQ,EAAE4C,iBAAiB;MAC3B3C;IACF,CAAC;IAEDmB,QAAQ,CAAC;MACP3B,IAAI,EAAE,eAAe;MACrBK;IACF,CAAC,CAAC;IAEFK,UAAU,CAAC8C,IAAI,CAAC;MACdxD,IAAI,EAAE,UAAU;MAChByC,MAAM,EAAEoB,kBAAkB;MAC1BJ,iBAAiB,EAAE;IACrB,CAAC,CAAC;EACJ,CAAC;EAED,MAAMK,cAA0C,GAC9CnD,WAAW,CAACS,eAAe,CAAC,EAAEc,OAAO,IAAI,CAAC,CAAC;EAE7C,MAAM;IACJ6B,UAAU,GAAGjF,QAAQ,CAACc,MAAM,CAAC;MAC3BC,GAAG,EAAEkB,KAAK,CAACiD,MAAM,CAACD,UAAU;MAC5BjE,OAAO,EAAEiB,KAAK,CAACkD,OAAO,CAACF;IACzB,CAAC,CAAC;IACFG,UAAU,GAAGpF,QAAQ,CAACc,MAAM,CAAC;MAC3BC,GAAG,EAAEkB,KAAK,CAACiD,MAAM,CAACE,UAAU;MAC5BpE,OAAO,EAAEiB,KAAK,CAACkD,OAAO,CAACC;IACzB,CAAC,CAAC;IACFC,QAAQ;IACRC,SAAS;IACTC,KAAK,EAAEC;EACT,CAAC,GAAGR,cAAc,CAACS,gBAAgB,IAAI,CAAC,CAAC;EAEzC,MAAMC,eAAe,GACnBV,cAAc,CAACW,WAAW,EAAED,eAAe,IAAI1D,MAAM,CAAC4D,UAAU;EAElE,MAAMC,gBAAgB,GAAGb,cAAc,CAACW,WAAW,EAAEG,OAAO,KAAK,MAAM;EAEvE,IAAIC,oBAAoB,GAAGf,cAAc,EAAEgB,0BAA0B;EACrE,IAAIC,eAAe,GAAGjB,cAAc,CAACkB,qBAAqB;EAC1D,IAAIC,iBAAiB,GAAGnB,cAAc,CAACoB,uBAAuB;;EAE9D;EACA;EACA,IAAIpG,QAAQ,CAACqG,EAAE,KAAK,SAAS,EAAE;IAC7B,QAAQC,mBAAmB,CAACZ,eAAe,CAAC;MAC1C,KAAK,gCAAgC;MACrC,KAAK,qCAAqC;MAC1C,KAAK,wCAAwC;MAC7C,KAAK,oCAAoC;MACzC,KAAK,uCAAuC;QAC1CS,iBAAiB,GACfA,iBAAiB,IACjBlG,aAAa,CAAC,gDAAgD,CAAC;QACjEgG,eAAe,GACbA,eAAe,IACfhG,aAAa,CAAC,oDAAoD,CAAC;QACrE8F,oBAAoB,GAClBA,oBAAoB,IACpB9F,aAAa,CAAC,iDAAiD,CAAC;QAClE;MACF,KAAK,+BAA+B;MACpC,KAAK,oCAAoC;MACzC,KAAK,uCAAuC;MAC5C,KAAK,mCAAmC;MACxC,KAAK,sCAAsC;QACzCkG,iBAAiB,GACfA,iBAAiB,IACjBlG,aAAa,CAAC,+CAA+C,CAAC;QAChEgG,eAAe,GACbA,eAAe,IACfhG,aAAa,CAAC,mDAAmD,CAAC;QACpE8F,oBAAoB,GAClBA,oBAAoB,IACpB9F,aAAa,CAAC,gDAAgD,CAAC;QACjE;IACJ;EACF;EAEAkG,iBAAiB,GACfA,iBAAiB,IACjBnG,QAAQ,CAACc,MAAM,CAAC;IAAEC,GAAG,EAAEd,aAAa,CAAC,OAAO,CAAC;IAAEe,OAAO,EAAEgB,MAAM,CAACuE;EAAK,CAAC,CAAC;EAExEN,eAAe,GAAGA,eAAe,IAAIjE,MAAM,CAACwE,OAAO;EAEnDT,oBAAoB,GAClBA,oBAAoB,IACpB/F,QAAQ,CAACc,MAAM,CAAC;IACd2F,OAAO,EAAElH,KAAK,CAAC0G,eAAe,CAAC,EAAES,KAAK,CAAC,KAAK,CAAC,CAACC,MAAM,CAAC,CAAC;IACtD3F,OAAO,EAAE4F;EACX,CAAC,CAAC;EAEJ,MAAMC,iBAAiB,GAAGA,CAAC;IAAErD;EAAgC,CAAC,KAAK;IACjE5B,UAAU,CAAC8C,IAAI,CAAC;MACdxD,IAAI,EAAE,iBAAiB;MACvByC,MAAM,EAAEH,KAAK,CAACjB;IAChB,CAAC,CAAC;EACJ,CAAC;EAED,MAAMuE,eAAe,GAAGA,CAAC;IAAEtD;EAAgC,CAAC,KAAK;IAC/D5B,UAAU,CAAC8C,IAAI,CAAC;MACdxD,IAAI,EAAE,eAAe;MACrByC,MAAM,EAAEH,KAAK,CAACjB;IAChB,CAAC,CAAC;EACJ,CAAC;EAED,MAAMwE,cAAc,GAAGzG,iBAAiB,CAAC0E,cAAc,CAAC;EAExD,MAAMgC,eAAe,GAAGlF,MAAM,IAAI,IAAI;EACtC,MAAMmF,aAAa,GAAGnF,MAAM,GACxBA,MAAM,CAAC;IACLV,KAAK;IACLS,WAAW;IACXD;EACF,CAAC,CAAC,GACF,IAAI;EAER,MAAMsF,oBAAoB,GACxBlC,cAAc,CAACkC,oBAAoB,KAAK,MAAM,GAC1C,WAAW,GACXlC,cAAc,CAACkC,oBAAoB;EAEzC,MAAMC,sBAAsB,GAC1BnC,cAAc,CAACmC,sBAAsB,KAAK,MAAM,GAC5C,WAAW,GACXnC,cAAc,CAACmC,sBAAsB,KAAK,MAAM,GAC9C,OAAO,GACPnC,cAAc,CAACmC,sBAAsB;EAE7C,MAAMC,eAAe,GAAGpC,cAAc,CAACoC,eAAe;EAEtD,oBACExG,KAAA,CAACpB,sBAAsB;IACrB6H,KAAK,EAAE;MACLC,aAAa,EACXP,cAAc,KAAK,MAAM,IAAIA,cAAc,KAAK,OAAO,GACnD,KAAK,GACL;IACR,CAAE;IAAAQ,QAAA,GAEDR,cAAc,KAAK,KAAK,IAAIA,cAAc,KAAK,MAAM,GAClDE,aAAa,GACb,IAAI,eACRvG,IAAA,CAACP,IAAI,CAACqH,IAAI;MACRC,eAAe,EAAE;QACfpD,iBAAiB,EAAE/B,eAAe;QAClCoF,cAAc,EAAE9E,WAAW,CAACrB,SAAS,CAACG;MACxC,CAAE;MACFiG,0BAA0B;MAC1BxD,aAAa,EAAEA,aAAc;MAC7BU,sBAAsB,EAAEA,sBAAuB;MAC/CC,uBAAuB,EAAEA,uBAAwB;MACjD8C,YAAY,EAAEZ,eAAe,IAAInB,gBAAiB;MAClDgC,WAAW,EAAE9F,IAAI,GAAG,MAAM,GAAG,OAAQ;MACrC+F,oBAAoB,EAAE;QAAEpC,eAAe,EAAE1D,MAAM,CAAC4D;MAAW,CAAE;MAC7D7E,GAAG,EAAE;QACHqG,eAAe,EAAEA,eAAe,GAC3BW,WAA2C,IAC1CX,eAAe,CAAC;UAAEY,SAAS,EAAED;QAAY,CAAC,CAAC,GAC7CnB,SAAS;QACbM,oBAAoB;QACpBC,sBAAsB;QACtBc,eAAe,EAAEhC;MACnB,CAAE;MAAAsB,QAAA,EAEDnG,KAAK,CAACe,MAAM,CAAC+F,GAAG,CAAC,CAAC1E,KAAK,EAAEpB,KAAK,KAAK;QAClC,MAAM+F,UAAU,GAAGtG,WAAW,CAAC2B,KAAK,CAACjB,GAAG,CAAC;QAEzC,IAAI4F,UAAU,IAAI,IAAI,EAAE;UACtB,MAAM,IAAI9F,KAAK,CACb,yCAAyCmB,KAAK,CAACjB,GAAG,IACpD,CAAC;QACH;QAEA,MAAM;UAAEa,OAAO;UAAEgF,MAAM;UAAExG;QAAW,CAAC,GAAGuG,UAAU;QAClD,MAAME,SAAS,GAAGjH,KAAK,CAACgB,KAAK,KAAKA,KAAK;QACvC,MAAMkG,WAAW,GAAGlH,KAAK,CAACmH,kBAAkB,CAAC5F,QAAQ,CAACa,KAAK,CAACjB,GAAG,CAAC;QAEhE,MAAM;UACJiG,KAAK;UACLC,IAAI,GAAG,KAAK;UACZC,gBAAgB,GAAG,OAAO;UAC1BC,WAAW;UACXC,sBAAsB;UACtBC,gBAAgB;UAChBC,UAAU;UACVC,WAAW;UACXC,gBAAgB;UAChBC,gBAAgB,GAAGlH,IAAI,GAAG,oBAAoB,GAAG,gBAAgB;UACjE4D,WAAW;UACXuD,wBAAwB;UACxBC,kBAAkB;UAClBC,UAAU;UACVC;QACF,CAAC,GAAGjG,OAAO;QAEX,MAAM;UACJsC,eAAe,EAAE4D,qBAAqB;UACtCC,WAAW,EAAEC;QACf,CAAC,GAAG7D,WAAW,IAAI,CAAC,CAAC;QAErB,MAAM8D,QAAQ;QACZ;QACA;QACAzJ,QAAQ,CAACqG,EAAE,KAAK,KAAK,IAAI2C,gBAAgB,IAAI,IAAI,GAC7CL,WAAW,GACXtJ,QAAQ,CAAC;UAAEqK,KAAK,EAAEf,WAAW;UAAEH;QAAM,CAAC,EAAEhF,KAAK,CAACS,IAAI,CAAC;QAEzD,MAAM0F,oBAAoB,GACxBd,gBAAgB,EAAEnD,eAAe,IAAI1D,MAAM,CAAC4H,YAAY;QAC1D,MAAMC,cAAc,GAClBhB,gBAAgB,EAAEtD,KAAK,IAAIhG,KAAK,CAACuK,UAAU,CAACH,oBAAoB,CAAC;QAEnE,MAAMI,iBAAmD,GAAG;UAC1DC,yBAAyB,EAAE/E,UAAU;UACrCgF,uBAAuB,EAAE5E,QAAQ;UACjC6E,yBAAyB,EAAE9E,UAAU;UACrC+E,wBAAwB,EAAE7E,SAAS;UACnC8E,wBAAwB,EAAEjE,iBAAiB,IAAIX,SAAS;UACxD6E,mBAAmB,EAAElE,iBAAiB;UACtCmE,8BAA8B,EAAEX;QAClC,CAAC;QAED,MAAMY,uBAA6D,GACjE;UACEH,wBAAwB,EAAEjE,iBAAiB,IAAIX,SAAS;UACxD6E,mBAAmB,EAAElE;QACvB,CAAC;QAEH,MAAMqE,yBAA+D,GACnE;UACEJ,wBAAwB,EAAEnE,eAAe;UACzCoE,mBAAmB,EAAEpE;QACvB,CAAC;QAEH,MAAMwE,OAAO,GAAIC,QAAiB,IAAK;UACrC,IAAI,OAAO5B,UAAU,KAAK,UAAU,EAAE;YACpC,MAAM6B,MAAM,GAAG7B,UAAU,CAAC;cACxB8B,OAAO,EAAEF,QAAQ;cACjBG,IAAI,EAAEhK,SAAU;cAChB0E,KAAK,EAAEmF,QAAQ,GAAGzE,eAAe,GAAGE;YACtC,CAAC,CAAC;YAEF,iBAAIrG,KAAK,CAACgL,cAAc,CAACH,MAAM,CAAC,EAAE;cAChC,MAAM,IAAItI,KAAK,CACb,mFACF,CAAC;YACH,CAAC,MAAM,IACLsI,MAAM,IACN,OAAOA,MAAM,KAAK,QAAQ,IAC1B,MAAM,IAAIA,MAAM,EAChB;cACA,OAAOI,eAAe,CAACJ,MAAM,CAAC;YAChC,CAAC,MAAM;cACL,MAAM,IAAItI,KAAK,CACb,6DAA6D,OAAOsI,MAAM,IAC5E,CAAC;YACH;UACF,CAAC,MAAM,IAAI7B,UAAU,IAAI,IAAI,EAAE;YAC7B,OAAOiC,eAAe,CAACjC,UAAU,CAAC;UACpC;UAEA,OAAOlC,SAAS;QAClB,CAAC;;QAED;QACA;QACA,MAAMoE,IAAI,GAAGhE,eAAe,GAAGJ,SAAS,GAAG6D,OAAO,CAAC,KAAK,CAAC;QACzD,MAAMQ,YAAY,GAAGjE,eAAe,GAAGJ,SAAS,GAAG6D,OAAO,CAAC,IAAI,CAAC;;QAEhE;QACA;QACA,MAAMS,QAAQ,GACZxC,gBAAgB,KAAK,MAAM,IAC3BJ,WAAW,IACX1F,WAAW,CAACtB,cAAc,EAAE0C,IAAI,KAAKR,KAAK,CAACjB,GAAG,IAC9CK,WAAW,CAACtB,cAAc,EAAEE,EAAE,KAAKgC,KAAK,CAACjB,GAAG,IAC3CkG,IAAI,KAAK,KAAK,IAAI,CAACjG,MAAM,CAACG,QAAQ,CAACa,KAAK,CAACjB,GAAG,CAAE;QAEjD,oBACE7B,IAAA,CAACP,IAAI,CAACgL,MAAM;UACVC,YAAY,EAAEA,CAAA,KAAMvE,iBAAiB,CAAC;YAAErD;UAAM,CAAC,CAAE;UACjD6H,WAAW,EAAEA,CAAA,KAAMvE,eAAe,CAAC;YAAEtD;UAAM,CAAC,CAAE;UAE9C8H,SAAS,EAAE9H,KAAK,CAACjB,GAAI;UACrBgJ,4BAA4B,EAAErC,wBAAyB;UACvDsC,gBAAgB,EAAErC,kBAAmB;UACrCsC,sBAAsB,EAAE7C,sBAAsB,KAAK,KAAM;UACzD8C,UAAU,EAAE3C,WAAW,EAAE4C,QAAQ,CAAC,CAAE;UACpCnD,KAAK,EAAEiB,QAAS;UAChB3B,oBAAoB,EAAE;YAAEpC,eAAe,EAAE1D,MAAM,CAAC4D;UAAW,CAAE;UAC7DgG,cAAc,EAAE;YACdC,oBAAoB,EAAE;cACpBC,SAAS,EAAE,IAAI;cACfC,WAAW,EAAE;YACf;UACF,CAAE;UACFtF,OAAO,EAAE;YACPuE,IAAI,EAAEA,IAAI,EAAEvE,OAAO,IAAIuE,IAAI,EAAEgB,MAAM;YACnCf,YAAY,EAAEA,YAAY,EAAExE,OAAO,IAAIwE,YAAY,EAAEe,MAAM;YAC3DC,kBAAkB,EAAE;cAClB3C,qBAAqB,EACnBA,qBAAqB,IAAI5D,eAAe;cAC1CwG,qBAAqB,EAAElH,cAAc,EAAEmH,iBAAiB;cACxDC,6BAA6B,EAC3BpH,cAAc,EAAEqH,yBAAyB;cAC3CC,MAAM,EAAE/B,uBAAuB;cAC/BG,QAAQ,EAAEF,yBAAyB;cACnC+B,8BAA8B,EAAExG,oBAAoB;cACpDyG,gCAAgC,EAC9BxH,cAAc,EAAEyH,4BAA4B;cAC9CzC,yBAAyB,EAAE/E,UAAU;cACrCiF,yBAAyB,EAAE9E,UAAU;cACrCsH,iCAAiC,EAAErH,QAAQ;cAC3CsH,iCAAiC,EAAEtH,QAAQ;cAC3C8E,wBAAwB,EAAE7E,SAAS;cACnCgF,8BAA8B,EAAEX,oBAAoB;cACpDiD,wBAAwB,EAAE/C;YAC5B;UACF,CAAE;UACF9I,GAAG,EAAE;YACHiK,IAAI,EAAEA,IAAI,EAAEjK,GAAG,IAAIiK,IAAI,EAAEgB,MAAM;YAC/Bf,YAAY,EAAEA,YAAY,EAAElK,GAAG,IAAIkK,YAAY,EAAEe,MAAM;YACvDa,UAAU,EAAE7D,gBAAgB;YAC5B8D,oBAAoB,EAAE;cACpBxD,qBAAqB;cACrBE,iBAAiB;cACjBP,gBAAgB;cAChB8D,OAAO,EAAE;gBACPT,MAAM,EAAEvC;cACV,CAAC;cACDiD,MAAM,EAAE;gBACNV,MAAM,EAAEvC;cACV,CAAC;cACDkD,aAAa,EAAE;gBACbX,MAAM,EAAEvC;cACV;YACF,CAAC;YACDkC,kBAAkB,EAAE;cAClB3C,qBAAqB;cACrBE,iBAAiB;cACjBP,gBAAgB;cAChB8D,OAAO,EAAE;gBACPT,MAAM,EAAEvC;cACV,CAAC;cACDiD,MAAM,EAAE;gBACNV,MAAM,EAAEvC;cACV,CAAC;cACDkD,aAAa,EAAE;gBACbX,MAAM,EAAEvC;cACV;YACF,CAAC;YACDV;UACF,CAAE;UAAA9B,QAAA,eAEF7G,IAAA,CAACH,QAAQ;YACPkI,IAAI,EAAEA,IAAK;YACXyE,OAAO,EAAE7E,SAAS,IAAIC,WAAW,IAAI9F,MAAM,CAACG,QAAQ,CAACa,KAAK,CAACjB,GAAG,CAAE;YAAAgF,QAAA,eAEhE7G,IAAA,CAACpB,YAAY;cAEX6N,IAAI,EAAE9E,SAAS,GAAG,QAAQ,GAAG6C,QAAQ,GAAG,OAAO,GAAG,QAAS;cAC3DgC,OAAO;cACL;cACA;cACA;cACA,IACD;cACD7F,KAAK,EAAEnH,UAAU,CAACkN,YAAa;cAAA7F,QAAA,eAE/B7G,IAAA,CAACF,aAAa;gBACZ6H,SAAS,EAAEA,SAAU;gBACrB7E,KAAK,EAAEA,KAAM;gBACb5B,UAAU,EAAEA,UAAW;gBACvBwB,OAAO,EAAEA,OAAQ;gBACjBiE,KAAK,EAAE+B,UAAW;gBAAA7B,QAAA,eAElB7G,IAAA,CAAC2M,qBAAqB;kBAAChF,SAAS,EAAEA,SAAU;kBAAAd,QAAA,eAC1C7G,IAAA,CAACL,yBAAyB,CAACiN,QAAQ;oBAACC,KAAK,EAAE,CAAE;oBAAAhG,QAAA,eAC3C7G,IAAA,CAACf,qBAAqB,CAAC2N,QAAQ;sBAACC,KAAK,EAAEtM,IAAK;sBAAAsG,QAAA,EACzCa,MAAM,CAAC;oBAAC,CACqB;kBAAC,CACC;gBAAC,CAChB;cAAC,CACX;YAAC,GAxBX5E,KAAK,CAACjB,GAyBC;UAAC,CACP;QAAC,GAvGNiB,KAAK,CAACjB,GAwGA,CAAC;MAElB,CAAC;IAAC,CACO,CAAC,EACXwE,cAAc,KAAK,QAAQ,IAAIA,cAAc,KAAK,OAAO,GACtDE,aAAa,GACb,IAAI;EAAA,CACc,CAAC;AAE7B;AAEA,SAASoG,qBAAqBA,CAAC;EAC7BhF,SAAS;EACTd;AAIF,CAAC,EAAE;EACD,MAAM,CAACiG,QAAQ,CAAC,GAAG1N,KAAK,CAAC4C,QAAQ,CAC/B,MAAM,IAAI3C,QAAQ,CAAC0N,KAAK,CAACpF,SAAS,GAAG,CAAC,GAAG,CAAC,CAC5C,CAAC;EAEDvI,KAAK,CAAC4N,eAAe,CAAC,MAAM;IAC1B;AACJ;AACA;AACA;AACA;IACIF,QAAQ,CAACG,QAAQ,CAACtF,SAAS,GAAG,CAAC,GAAG,CAAC,CAAC;EACtC,CAAC,EAAE,CAACA,SAAS,EAAEmF,QAAQ,CAAC,CAAC;EAEzB,MAAMI,kBAAkB,GAAG9N,KAAK,CAAC+N,OAAO,CAAC,MAAM;IAC7C,OAAO;MACL1K,OAAO,EAAE;QAAEqK;MAAS;IACtB,CAAC;EACH,CAAC,EAAE,CAACA,QAAQ,CAAC,CAAC;EAEd,oBACE9M,IAAA,CAACN,yBAAyB,CAACkN,QAAQ;IAACC,KAAK,EAAEK,kBAAmB;IAAArG,QAAA,EAC3DA;EAAQ,CACyB,CAAC;AAEzC;AAEA,SAASwD,eAAeA,CAACC,IAAU,EAAgB;EACjD,QAAQA,IAAI,CAAC9J,IAAI;IACf,KAAK,UAAU;MACb,OAAO;QACLH,GAAG,EAAEiK,IAAI;QACTvE,OAAO,EAAEG,SAAS;QAClBoF,MAAM,EAAEpF;MACV,CAAC;IACH,KAAK,gBAAgB;MACnB,OAAO;QACL7F,GAAG,EAAE6F,SAAS;QACdH,OAAO,EAAE;UACPvF,IAAI,EAAE,aAAa;UACnB4M,WAAW,EAAEpO,cAAc,CAACqO,cAAc,CAAC;YACzC9J,IAAI,EAAE+G,IAAI,CAAC/G,IAAI;YACf+J,OAAO,EAAEhD,IAAI,CAACgD,OAAO;YACrBC,MAAM,EAAEjD,IAAI,CAACiD,MAAM;YACnBpD,IAAI,EAAEhK;UACR,CAAC;QACH,CAAC;QACDmL,MAAM,EAAEpF;MACV,CAAC;IACH,KAAK,OAAO;MACV,OAAO;QACL7F,GAAG,EACDiK,IAAI,CAACkD,MAAM,KAAK,KAAK,GACjB;UACEhN,IAAI,EAAE,aAAa;UACnB4M,WAAW,EAAE9C,IAAI,CAACmD;QACpB,CAAC,GACD;UACEjN,IAAI,EAAE,gBAAgB;UACtBkN,cAAc,EAAEpD,IAAI,CAACmD;QACvB,CAAC;QACP1H,OAAO,EAAEG,SAAS;QAClBoF,MAAM,EAAE;UACN9K,IAAI,EAAE,aAAa;UACnB4M,WAAW,EAAE9C,IAAI,CAACmD;QACpB;MACF,CAAC;IACH;MAAS;QACP,MAAME,gBAAuB,GAAGrD,IAAI;QAEpC,OAAOqD,gBAAgB;MACzB;EACF;AACF;AAEA,SAAS/H,mBAAmBA,CAACf,KAAiB,EAAE;EAC9C,MAAMgI,KAAK,GAAGhI,KAAgB;EAE9B,IACE,OAAOgI,KAAK,KAAK,QAAQ,IACzBA,KAAK,IAAI,IAAI,IACb,gBAAgB,IAAIA,KAAK,IACzBe,KAAK,CAACC,OAAO,CAAChB,KAAK,CAACiB,cAAc,CAAC,IACnC,OAAOjB,KAAK,CAACiB,cAAc,CAAC,CAAC,CAAC,KAAK,QAAQ,EAC3C;IACA,OAAOjB,KAAK,CAACiB,cAAc,CAAC,CAAC,CAAC,CAACC,OAAO,CAAC,iBAAiB,EAAE,EAAE,CAAC;EAC/D;EAEA,OAAO,IAAI;AACb","ignoreList":[]}
|