react-native-tab-view 4.0.0-alpha.6 → 4.0.0-alpha.8

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.
Files changed (37) hide show
  1. package/lib/commonjs/PlatformPressable.js +22 -1
  2. package/lib/commonjs/PlatformPressable.js.map +1 -1
  3. package/lib/commonjs/TabBar.js +107 -91
  4. package/lib/commonjs/TabBar.js.map +1 -1
  5. package/lib/commonjs/TabBarIndicator.js +4 -11
  6. package/lib/commonjs/TabBarIndicator.js.map +1 -1
  7. package/lib/commonjs/TabBarItem.js +53 -72
  8. package/lib/commonjs/TabBarItem.js.map +1 -1
  9. package/lib/module/PlatformPressable.js +22 -1
  10. package/lib/module/PlatformPressable.js.map +1 -1
  11. package/lib/module/TabBar.js +107 -91
  12. package/lib/module/TabBar.js.map +1 -1
  13. package/lib/module/TabBarIndicator.js +5 -12
  14. package/lib/module/TabBarIndicator.js.map +1 -1
  15. package/lib/module/TabBarItem.js +53 -72
  16. package/lib/module/TabBarItem.js.map +1 -1
  17. package/lib/typescript/src/PlatformPressable.d.ts +3 -2
  18. package/lib/typescript/src/PlatformPressable.d.ts.map +1 -1
  19. package/lib/typescript/src/TabBar.d.ts +4 -15
  20. package/lib/typescript/src/TabBar.d.ts.map +1 -1
  21. package/lib/typescript/src/TabBarIndicator.d.ts.map +1 -1
  22. package/lib/typescript/src/TabBarItem.d.ts +2 -17
  23. package/lib/typescript/src/TabBarItem.d.ts.map +1 -1
  24. package/lib/typescript/src/TabView.d.ts +3 -3
  25. package/lib/typescript/src/TabView.d.ts.map +1 -1
  26. package/lib/typescript/src/index.d.ts +1 -1
  27. package/lib/typescript/src/index.d.ts.map +1 -1
  28. package/lib/typescript/src/types.d.ts +26 -1
  29. package/lib/typescript/src/types.d.ts.map +1 -1
  30. package/package.json +2 -2
  31. package/src/PlatformPressable.tsx +31 -2
  32. package/src/TabBar.tsx +158 -160
  33. package/src/TabBarIndicator.tsx +3 -10
  34. package/src/TabBarItem.tsx +82 -106
  35. package/src/TabView.tsx +1 -1
  36. package/src/index.tsx +6 -1
  37. package/src/types.tsx +26 -1
@@ -15,6 +15,7 @@ function _interopRequireWildcard(e, r) { if (!r && e && e.__esModule) return e;
15
15
  function _extends() { _extends = Object.assign ? Object.assign.bind() : function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
16
16
  const DEFAULT_ACTIVE_COLOR = 'rgba(255, 255, 255, 1)';
17
17
  const DEFAULT_INACTIVE_COLOR = 'rgba(255, 255, 255, 0.7)';
18
+ const ICON_SIZE = 24;
18
19
  const getActiveOpacity = (position, routesLength, tabIndex) => {
19
20
  if (routesLength > 1) {
20
21
  const inputRange = Array.from({
@@ -45,13 +46,12 @@ const TabBarItemInternal = _ref => {
45
46
  let {
46
47
  accessibilityLabel,
47
48
  accessible,
48
- label: labelText,
49
+ label: customlabel,
49
50
  testID,
50
51
  onLongPress,
51
52
  onPress,
52
53
  isFocused,
53
54
  position,
54
- route,
55
55
  style,
56
56
  inactiveColor: inactiveColorCustom,
57
57
  activeColor: activeColorCustom,
@@ -60,83 +60,70 @@ const TabBarItemInternal = _ref => {
60
60
  index: tabIndex,
61
61
  pressColor,
62
62
  pressOpacity,
63
- renderBadge,
64
- renderIcon,
65
63
  defaultTabWidth,
64
+ icon: customIcon,
65
+ badge: customBadge,
66
+ href,
67
+ labelText,
66
68
  routesLength,
67
- renderLabel: renderLabelCustom,
68
69
  android_ripple = {
69
70
  borderless: true
70
- }
71
+ },
72
+ labelAllowFontScaling,
73
+ route
71
74
  } = _ref;
72
75
  const labelColorFromStyle = _reactNative.StyleSheet.flatten(labelStyle || {}).color;
73
76
  const activeColor = activeColorCustom !== undefined ? activeColorCustom : typeof labelColorFromStyle === 'string' ? labelColorFromStyle : DEFAULT_ACTIVE_COLOR;
74
77
  const inactiveColor = inactiveColorCustom !== undefined ? inactiveColorCustom : typeof labelColorFromStyle === 'string' ? labelColorFromStyle : DEFAULT_INACTIVE_COLOR;
75
78
  const activeOpacity = getActiveOpacity(position, routesLength, tabIndex);
76
79
  const inactiveOpacity = getInactiveOpacity(position, routesLength, tabIndex);
77
- let icon = null;
78
- let label = null;
79
- if (renderIcon) {
80
- const activeIcon = renderIcon({
81
- route,
82
- focused: true,
83
- color: activeColor
84
- });
85
- const inactiveIcon = renderIcon({
86
- route,
80
+ const icon = React.useMemo(() => {
81
+ if (!customIcon) {
82
+ return null;
83
+ }
84
+ const inactiveIcon = customIcon({
87
85
  focused: false,
88
- color: inactiveColor
86
+ color: inactiveColor,
87
+ size: ICON_SIZE,
88
+ route
89
89
  });
90
- if (inactiveIcon != null && activeIcon != null) {
91
- icon = /*#__PURE__*/React.createElement(_reactNative.View, {
92
- style: styles.icon
93
- }, /*#__PURE__*/React.createElement(_reactNative.Animated.View, {
94
- style: {
95
- opacity: inactiveOpacity
96
- }
97
- }, inactiveIcon), /*#__PURE__*/React.createElement(_reactNative.Animated.View, {
98
- style: [_reactNative.StyleSheet.absoluteFill, {
99
- opacity: activeOpacity
100
- }]
101
- }, activeIcon));
102
- }
103
- }
104
- const renderLabel = renderLabelCustom ? renderLabelCustom : labelProps => /*#__PURE__*/React.createElement(_TabBarItemLabel.TabBarItemLabel, _extends({}, labelProps, {
105
- icon: icon,
106
- label: labelText,
107
- labelStyle: labelStyle
108
- }));
109
- if (renderLabel) {
110
- const activeLabel = renderLabel({
111
- route,
90
+ const activeIcon = customIcon({
112
91
  focused: true,
113
- color: activeColor
92
+ color: activeColor,
93
+ size: ICON_SIZE,
94
+ route
114
95
  });
115
- const inactiveLabel = renderLabel({
116
- route,
117
- focused: false,
118
- color: inactiveColor
119
- });
120
- label = /*#__PURE__*/React.createElement(_reactNative.View, null, /*#__PURE__*/React.createElement(_reactNative.Animated.View, {
96
+ return /*#__PURE__*/React.createElement(_reactNative.View, {
97
+ style: styles.icon
98
+ }, /*#__PURE__*/React.createElement(_reactNative.Animated.View, {
121
99
  style: {
122
100
  opacity: inactiveOpacity
123
101
  }
124
- }, inactiveLabel), /*#__PURE__*/React.createElement(_reactNative.Animated.View, {
102
+ }, inactiveIcon), /*#__PURE__*/React.createElement(_reactNative.Animated.View, {
125
103
  style: [_reactNative.StyleSheet.absoluteFill, {
126
104
  opacity: activeOpacity
127
105
  }]
128
- }, activeLabel));
129
- }
106
+ }, activeIcon));
107
+ }, [activeColor, activeOpacity, customIcon, inactiveColor, inactiveOpacity, route]);
108
+ const renderLabel = React.useCallback(focused => customlabel ? customlabel({
109
+ focused,
110
+ color: focused ? activeColor : inactiveColor,
111
+ style: labelStyle,
112
+ label: labelText,
113
+ allowFontScaling: labelAllowFontScaling,
114
+ route
115
+ }) : /*#__PURE__*/React.createElement(_TabBarItemLabel.TabBarItemLabel, {
116
+ color: focused ? activeColor : inactiveColor,
117
+ icon: icon,
118
+ label: labelText,
119
+ labelStyle: labelStyle
120
+ }), [customlabel, activeColor, labelStyle, labelText, labelAllowFontScaling, route, inactiveColor, icon]);
130
121
  const tabStyle = _reactNative.StyleSheet.flatten(style);
131
122
  const isWidthSet = tabStyle?.width !== undefined;
132
123
  const tabContainerStyle = isWidthSet ? null : {
133
124
  width: defaultTabWidth
134
125
  };
135
- const scene = {
136
- route
137
- };
138
126
  accessibilityLabel = typeof accessibilityLabel !== 'undefined' ? accessibilityLabel : labelText;
139
- const badge = renderBadge ? renderBadge(scene) : null;
140
127
  return /*#__PURE__*/React.createElement(_PlatformPressable.PlatformPressable, {
141
128
  android_ripple: android_ripple,
142
129
  testID: testID,
@@ -152,13 +139,22 @@ const TabBarItemInternal = _ref => {
152
139
  onLayout: onLayout,
153
140
  onPress: onPress,
154
141
  onLongPress: onLongPress,
142
+ href: href,
155
143
  style: [styles.pressable, tabContainerStyle]
156
144
  }, /*#__PURE__*/React.createElement(_reactNative.View, {
157
145
  pointerEvents: "none",
158
146
  style: [styles.item, tabStyle]
159
- }, icon, label, badge != null ? /*#__PURE__*/React.createElement(_reactNative.View, {
147
+ }, icon, /*#__PURE__*/React.createElement(_reactNative.View, null, /*#__PURE__*/React.createElement(_reactNative.Animated.View, {
148
+ style: {
149
+ opacity: inactiveOpacity
150
+ }
151
+ }, renderLabel(false)), /*#__PURE__*/React.createElement(_reactNative.Animated.View, {
152
+ style: [_reactNative.StyleSheet.absoluteFill, {
153
+ opacity: activeOpacity
154
+ }]
155
+ }, renderLabel(true))), customBadge != null ? /*#__PURE__*/React.createElement(_reactNative.View, {
160
156
  style: styles.badge
161
- }, badge) : null));
157
+ }, customBadge()) : null));
162
158
  };
163
159
  const MemoizedTabBarItemInternal = /*#__PURE__*/React.memo(TabBarItemInternal);
164
160
  function TabBarItem(props) {
@@ -168,23 +164,12 @@ function TabBarItem(props) {
168
164
  onLayout,
169
165
  navigationState,
170
166
  route,
171
- getAccessibilityLabel,
172
- getLabelText,
173
- getTestID,
174
- getAccessible,
175
167
  ...rest
176
168
  } = props;
177
169
  const onPressLatest = (0, _useLatestCallback.default)(onPress);
178
170
  const onLongPressLatest = (0, _useLatestCallback.default)(onLongPress);
179
171
  const onLayoutLatest = (0, _useLatestCallback.default)(onLayout ? onLayout : () => {});
180
172
  const tabIndex = navigationState.routes.indexOf(route);
181
- const scene = {
182
- route
183
- };
184
- const accessibilityLabel = getAccessibilityLabel(scene);
185
- const label = getLabelText(scene);
186
- const testID = getTestID(scene);
187
- const accessible = getAccessible(scene);
188
173
  return /*#__PURE__*/React.createElement(MemoizedTabBarItemInternal, _extends({}, rest, {
189
174
  onPress: onPressLatest,
190
175
  onLayout: onLayoutLatest,
@@ -192,11 +177,7 @@ function TabBarItem(props) {
192
177
  isFocused: navigationState.index === tabIndex,
193
178
  route: route,
194
179
  index: tabIndex,
195
- routesLength: navigationState.routes.length,
196
- accessibilityLabel: accessibilityLabel,
197
- label: label,
198
- testID: testID,
199
- accessible: accessible
180
+ routesLength: navigationState.routes.length
200
181
  }));
201
182
  }
202
183
  const styles = _reactNative.StyleSheet.create({
@@ -213,7 +194,7 @@ const styles = _reactNative.StyleSheet.create({
213
194
  badge: {
214
195
  position: 'absolute',
215
196
  top: 0,
216
- right: 0
197
+ end: 0
217
198
  },
218
199
  pressable: {
219
200
  // The label is not pressable on Windows
@@ -1 +1 @@
1
- {"version":3,"names":["React","_interopRequireWildcard","require","_reactNative","_useLatestCallback","_interopRequireDefault","_PlatformPressable","_TabBarItemLabel","obj","__esModule","default","_getRequireWildcardCache","e","WeakMap","r","t","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","_extends","assign","bind","target","arguments","length","source","key","apply","DEFAULT_ACTIVE_COLOR","DEFAULT_INACTIVE_COLOR","getActiveOpacity","position","routesLength","tabIndex","inputRange","Array","from","_","interpolate","outputRange","map","getInactiveOpacity","TabBarItemInternal","_ref","accessibilityLabel","accessible","label","labelText","testID","onLongPress","onPress","isFocused","route","style","inactiveColor","inactiveColorCustom","activeColor","activeColorCustom","labelStyle","onLayout","index","pressColor","pressOpacity","renderBadge","renderIcon","defaultTabWidth","renderLabel","renderLabelCustom","android_ripple","borderless","labelColorFromStyle","StyleSheet","flatten","color","undefined","activeOpacity","inactiveOpacity","icon","activeIcon","focused","inactiveIcon","createElement","View","styles","Animated","opacity","absoluteFill","labelProps","TabBarItemLabel","activeLabel","inactiveLabel","tabStyle","isWidthSet","width","tabContainerStyle","scene","badge","PlatformPressable","accessibilityRole","accessibilityState","selected","unstable_pressDelay","pressable","pointerEvents","item","MemoizedTabBarItemInternal","memo","TabBarItem","props","navigationState","getAccessibilityLabel","getLabelText","getTestID","getAccessible","rest","onPressLatest","useLatestCallback","onLongPressLatest","onLayoutLatest","routes","indexOf","create","margin","flex","alignItems","justifyContent","padding","minHeight","top","right","backgroundColor"],"sourceRoot":"../../src","sources":["TabBarItem.tsx"],"mappings":"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"}
1
+ {"version":3,"names":["React","_interopRequireWildcard","require","_reactNative","_useLatestCallback","_interopRequireDefault","_PlatformPressable","_TabBarItemLabel","obj","__esModule","default","_getRequireWildcardCache","e","WeakMap","r","t","has","get","n","__proto__","a","Object","defineProperty","getOwnPropertyDescriptor","u","prototype","hasOwnProperty","call","i","set","_extends","assign","bind","target","arguments","length","source","key","apply","DEFAULT_ACTIVE_COLOR","DEFAULT_INACTIVE_COLOR","ICON_SIZE","getActiveOpacity","position","routesLength","tabIndex","inputRange","Array","from","_","interpolate","outputRange","map","getInactiveOpacity","TabBarItemInternal","_ref","accessibilityLabel","accessible","label","customlabel","testID","onLongPress","onPress","isFocused","style","inactiveColor","inactiveColorCustom","activeColor","activeColorCustom","labelStyle","onLayout","index","pressColor","pressOpacity","defaultTabWidth","icon","customIcon","badge","customBadge","href","labelText","android_ripple","borderless","labelAllowFontScaling","route","labelColorFromStyle","StyleSheet","flatten","color","undefined","activeOpacity","inactiveOpacity","useMemo","inactiveIcon","focused","size","activeIcon","createElement","View","styles","Animated","opacity","absoluteFill","renderLabel","useCallback","allowFontScaling","TabBarItemLabel","tabStyle","isWidthSet","width","tabContainerStyle","PlatformPressable","accessibilityRole","accessibilityState","selected","unstable_pressDelay","pressable","pointerEvents","item","MemoizedTabBarItemInternal","memo","TabBarItem","props","navigationState","rest","onPressLatest","useLatestCallback","onLongPressLatest","onLayoutLatest","routes","indexOf","create","margin","flex","alignItems","justifyContent","padding","minHeight","top","end","backgroundColor"],"sourceRoot":"../../src","sources":["TabBarItem.tsx"],"mappings":"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"}
@@ -13,12 +13,32 @@ const ANDROID_SUPPORTS_RIPPLE = Platform.OS === 'android' && Platform.Version >=
13
13
  */
14
14
  export function PlatformPressable(_ref) {
15
15
  let {
16
+ disabled,
16
17
  android_ripple,
17
18
  pressColor = 'rgba(0, 0, 0, .32)',
18
19
  pressOpacity,
19
20
  style,
21
+ onPress,
20
22
  ...rest
21
23
  } = _ref;
24
+ const handlePress = e => {
25
+ // @ts-expect-error: these properties exist on web, but not in React Native
26
+ const hasModifierKey = e.metaKey || e.altKey || e.ctrlKey || e.shiftKey; // ignore clicks with modifier keys
27
+ // @ts-expect-error: these properties exist on web, but not in React Native
28
+ const isLeftClick = e.button == null || e.button === 0; // only handle left clicks
29
+ const isSelfTarget = [undefined, null, '', 'self'].includes(
30
+ // @ts-expect-error: these properties exist on web, but not in React Native
31
+ e.currentTarget?.target); // let browser handle "target=_blank" etc.
32
+
33
+ if (Platform.OS === 'web' && rest.href != null) {
34
+ if (!hasModifierKey && isLeftClick && isSelfTarget) {
35
+ e.preventDefault();
36
+ onPress?.(e);
37
+ }
38
+ } else {
39
+ onPress?.(e);
40
+ }
41
+ };
22
42
  return /*#__PURE__*/React.createElement(Pressable, _extends({
23
43
  android_ripple: ANDROID_SUPPORTS_RIPPLE ? {
24
44
  color: pressColor,
@@ -33,7 +53,8 @@ export function PlatformPressable(_ref) {
33
53
  }, typeof style === 'function' ? style({
34
54
  pressed
35
55
  }) : style];
36
- }
56
+ },
57
+ onPress: disabled ? undefined : handlePress
37
58
  }, rest));
38
59
  }
39
60
  //# sourceMappingURL=PlatformPressable.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["React","Platform","Pressable","ANDROID_VERSION_LOLLIPOP","ANDROID_SUPPORTS_RIPPLE","OS","Version","PlatformPressable","_ref","android_ripple","pressColor","pressOpacity","style","rest","createElement","_extends","color","undefined","_ref2","pressed","opacity"],"sourceRoot":"../../src","sources":["PlatformPressable.tsx"],"mappings":";AAAA,OAAO,KAAKA,KAAK,MAAM,OAAO;AAC9B,SAASC,QAAQ,EAAEC,SAAS,QAA6B,cAAc;AAQvE,MAAMC,wBAAwB,GAAG,EAAE;AACnC,MAAMC,uBAAuB,GAC3BH,QAAQ,CAACI,EAAE,KAAK,SAAS,IAAIJ,QAAQ,CAACK,OAAO,IAAIH,wBAAwB;;AAE3E;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASI,iBAAiBA,CAAAC,IAAA,EAMvB;EAAA,IANwB;IAChCC,cAAc;IACdC,UAAU,GAAG,oBAAoB;IACjCC,YAAY;IACZC,KAAK;IACL,GAAGC;EACE,CAAC,GAAAL,IAAA;EACN,oBACER,KAAA,CAAAc,aAAA,CAACZ,SAAS,EAAAa,QAAA;IACRN,cAAc,EACZL,uBAAuB,GACnB;MAAEY,KAAK,EAAEN,UAAU;MAAE,GAAGD;IAAe,CAAC,GACxCQ,SACL;IACDL,KAAK,EAAEM,KAAA;MAAA,IAAC;QAAEC;MAAQ,CAAC,GAAAD,KAAA;MAAA,OAAK,CACtB;QAAEE,OAAO,EAAED,OAAO,IAAI,CAACf,uBAAuB,GAAGO,YAAY,GAAG;MAAE,CAAC,EACnE,OAAOC,KAAK,KAAK,UAAU,GAAGA,KAAK,CAAC;QAAEO;MAAQ,CAAC,CAAC,GAAGP,KAAK,CACzD;IAAA;EAAC,GACEC,IAAI,CACT,CAAC;AAEN"}
1
+ {"version":3,"names":["React","Platform","Pressable","ANDROID_VERSION_LOLLIPOP","ANDROID_SUPPORTS_RIPPLE","OS","Version","PlatformPressable","_ref","disabled","android_ripple","pressColor","pressOpacity","style","onPress","rest","handlePress","e","hasModifierKey","metaKey","altKey","ctrlKey","shiftKey","isLeftClick","button","isSelfTarget","undefined","includes","currentTarget","target","href","preventDefault","createElement","_extends","color","_ref2","pressed","opacity"],"sourceRoot":"../../src","sources":["PlatformPressable.tsx"],"mappings":";AAAA,OAAO,KAAKA,KAAK,MAAM,OAAO;AAC9B,SAEEC,QAAQ,EACRC,SAAS,QAEJ,cAAc;AASrB,MAAMC,wBAAwB,GAAG,EAAE;AACnC,MAAMC,uBAAuB,GAC3BH,QAAQ,CAACI,EAAE,KAAK,SAAS,IAAIJ,QAAQ,CAACK,OAAO,IAAIH,wBAAwB;;AAE3E;AACA;AACA;AACA;AACA;AACA;AACA;AACA,OAAO,SAASI,iBAAiBA,CAAAC,IAAA,EAQvB;EAAA,IARwB;IAChCC,QAAQ;IACRC,cAAc;IACdC,UAAU,GAAG,oBAAoB;IACjCC,YAAY;IACZC,KAAK;IACLC,OAAO;IACP,GAAGC;EACE,CAAC,GAAAP,IAAA;EACN,MAAMQ,WAAW,GAAIC,CAAwB,IAAK;IAChD;IACA,MAAMC,cAAc,GAAGD,CAAC,CAACE,OAAO,IAAIF,CAAC,CAACG,MAAM,IAAIH,CAAC,CAACI,OAAO,IAAIJ,CAAC,CAACK,QAAQ,CAAC,CAAC;IACzE;IACA,MAAMC,WAAW,GAAGN,CAAC,CAACO,MAAM,IAAI,IAAI,IAAIP,CAAC,CAACO,MAAM,KAAK,CAAC,CAAC,CAAC;IACxD,MAAMC,YAAY,GAAG,CAACC,SAAS,EAAE,IAAI,EAAE,EAAE,EAAE,MAAM,CAAC,CAACC,QAAQ;IACzD;IACAV,CAAC,CAACW,aAAa,EAAEC,MACnB,CAAC,CAAC,CAAC;;IAEH,IAAI5B,QAAQ,CAACI,EAAE,KAAK,KAAK,IAAIU,IAAI,CAACe,IAAI,IAAI,IAAI,EAAE;MAC9C,IAAI,CAACZ,cAAc,IAAIK,WAAW,IAAIE,YAAY,EAAE;QAClDR,CAAC,CAACc,cAAc,CAAC,CAAC;QAClBjB,OAAO,GAAGG,CAAC,CAAC;MACd;IACF,CAAC,MAAM;MACLH,OAAO,GAAGG,CAAC,CAAC;IACd;EACF,CAAC;EAED,oBACEjB,KAAA,CAAAgC,aAAA,CAAC9B,SAAS,EAAA+B,QAAA;IACRvB,cAAc,EACZN,uBAAuB,GACnB;MAAE8B,KAAK,EAAEvB,UAAU;MAAE,GAAGD;IAAe,CAAC,GACxCgB,SACL;IACDb,KAAK,EAAEsB,KAAA;MAAA,IAAC;QAAEC;MAAQ,CAAC,GAAAD,KAAA;MAAA,OAAK,CACtB;QAAEE,OAAO,EAAED,OAAO,IAAI,CAAChC,uBAAuB,GAAGQ,YAAY,GAAG;MAAE,CAAC,EACnE,OAAOC,KAAK,KAAK,UAAU,GAAGA,KAAK,CAAC;QAAEuB;MAAQ,CAAC,CAAC,GAAGvB,KAAK,CACzD;IAAA,CAAC;IACFC,OAAO,EAAEL,QAAQ,GAAGiB,SAAS,GAAGV;EAAY,GACxCD,IAAI,CACT,CAAC;AAEN"}