/* Metro module 14395; source: modules/guilds_bar/native/GuildsBarAnimatedItemWrapper.tsx; dependencies: [31, 4586, 14385, 33, 4501, 697, 3860, 4508, 4577, 4017, 8141, 14396, 14374, 4013, 1244, 3869, 6821, 7599, 2] */ function _fun109011(global, require, importDefault, importAll, module, exports, dependencyMap) { // fn#109011, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:14592:6, offset: 0x023394a0, size: 391 bytes, params: 8, frame: 21 const env0_0 = require; const closure = UnreadIndicator; const closure2 = renderUnreadIndicator; const Object = global.Object; Object.defineProperty(exports, '__esModule', {value: true}); const env0_3 = importAll(31) /* metro dependency 31 */; const env0_4 = (require(4586) /* metro dependency 4586: styleConstants */).IOS_POINTER_STYLE; let value = require(14385) /* metro dependency 14385: GuildsBarConstants */; const env0_5 = value.GUILD_ITEM_HIT_SLOP; const env0_6 = value.useGuildWrapperSize; value = require(33) /* metro dependency 33 */; const env0_7 = value.jsx; const env0_8 = value.jsxs; const env0_9 = {'mass': 0.8, 'damping': 100, 'stiffness': 150}; const env0_10 = {'mass': 0.25, 'damping': 100, 'stiffness': 200}; const env0_11 = (require(4501) /* metro dependency 4501: createStyles */).createStyles(_fun109018); const env0_12 = (require(4501) /* metro dependency 4501: createStyles */).createStyles(_fun109019); object = {code: "function GuildsBarAnimatedItemWrapperTsx1(values){const{disableEntering,sharedId,id,withSpring,BAR_SPRING_PHYSICS,guildItemSize}=this.__closure;if(disableEntering||sharedId!=null&&sharedId.get()!==id){return{animations:{},initialValues:{}};}return{animations:{originY:withSpring(values.targetOriginY,BAR_SPRING_PHYSICS,'animate-always'),originX:withSpring(values.targetOriginX,BAR_SPRING_PHYSICS,'animate-always'),height:withSpring(values.targetHeight,BAR_SPRING_PHYSICS,'animate-always')},initialValues:{height:8,originY:guildItemSize/2,originX:-12}};}"}; object = {code: "function GuildsBarAnimatedItemWrapperTsx2(values){const{withSpring,BAR_SPRING_PHYSICS,transitionState,TransitionStates,cleanUp,runOnJS}=this.__closure;return{animations:{originY:withSpring(values.targetOriginY,BAR_SPRING_PHYSICS,'animate-always'),originX:withSpring(values.targetOriginX,BAR_SPRING_PHYSICS,'animate-always'),height:withSpring(values.targetHeight,BAR_SPRING_PHYSICS,'animate-always')},initialValues:{height:values.currentHeight,originY:values.currentOriginY,originX:values.currentOriginX},callback:function(finished){if(transitionState===TransitionStates.YEETED&&finished&&cleanUp!=null){runOnJS(cleanUp)();}}};}"}; object = {code: "function GuildsBarAnimatedItemWrapperTsx3(){const{withSpring,circle,guildItemSelectedBorderRadius,guildItemSize,CORNER_SPRING_PHYSICS}=this.__closure;return{borderRadius:withSpring(!circle?guildItemSelectedBorderRadius:guildItemSize/2,CORNER_SPRING_PHYSICS,'animate-always')};}"}; (require(2) /* metro dependency 2 */).fileFinishedImporting('modules/guilds_bar/native/GuildsBarAnimatedItemWrapper.tsx'); exports.default = GuildsBarAnimatedItemWrapper; exports.useGuildsBarAnimatedWrapperStyles = useGuildsBarAnimatedWrapperStyles; exports.UnreadIndicator = closure; exports.renderUnreadIndicator = closure2; } function UnreadIndicator({selected, sharedId, id, transitionState = require(dependencyMap[7]).TransitionStates.MOUNTED, cleanUp}) { // fn#109012, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:14592:2553, offset: 0x02339627, size: 666 bytes, params: 2, frame: 28 var object2; const env0_3 = cleanUp; const useTokenModule = require(3860) /* metro dependency 3860: useToken */; const useToken = useTokenModule.useToken; const GUILD_BAR_ITEM_SIZE = (importDefault(697) /* metro dependency 697: native */).modules.mobile.GUILD_BAR_ITEM_SIZE; const value2 = Reflect.apply(useToken, useTokenModule, [GUILD_BAR_ITEM_SIZE]); const styles = useStyles(useGuildWrapperSize()); const TransitionStates = (require(4508) /* metro dependency 4508: TransitionGroup */).TransitionStates; const MOUNTED = TransitionStates.MOUNTED; const value4 = transitionState === MOUNTED; const r7 = selected ? transitionState === (require(4508) /* metro dependency 4508: TransitionGroup */).TransitionStates.YEETED ? 8 : 40 : 8; let binding = env0_3; const value7 = binding.useMemo(_fun109013, [r7, transitionState, styles.unreadIndicator]); binding = env0_3; let useCallback = binding.useCallback; let closure = UnreadIndicatorP; object2 = {disableEntering: value4, sharedId: sharedId, id: id}; object2.withSpring = (require(4577) /* metro dependency 4577: spring */).withSpring; object2.BAR_SPRING_PHYSICS = env0_10; object2.guildItemSize = value2; closure.__closure = object2; closure.__workletHash = 404454683979; closure.__initData = env0_13; const value8 = Reflect.apply(useCallback, binding, [closure, [value4, sharedId, id, value2]]); binding = env0_3; useCallback = binding.useCallback; closure = UnreadIndicator_; object2 = {withSpring: (require(4577) /* metro dependency 4577: spring */).withSpring, BAR_SPRING_PHYSICS: env0_10, transitionState: transitionState}; object2.TransitionStates = TransitionStates; object2.cleanUp = cleanUp; object2.runOnJS = (require(4017) /* metro dependency 4017: ReanimatedRexport */).runOnJS; closure.__closure = object2; closure.__workletHash = 10632665703864; closure.__initData = env0_14; return ((Component) => )(importDefault(8141) /* metro dependency 8141: ReanimatedNativeView */); } function renderUnreadIndicator(a0, {selected, sharedId, id}, a2, a3) { // fn#109017, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:14592:4212, offset: 0x02339b65, size: 77 bytes, params: 5, frame: 16 return ( ); } function _fun109018() { // fn#109018, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:14592:320, offset: 0x02339bb2, size: 194 bytes, params: 1, frame: 16 const value = a0; const r2 = value !== undefined ? value : 56; const object = {'position': 'absolute', 'top': null, 'left': -4, 'height': 8, 'width': 8}; object.top = r2 / 2; object.borderRadius = (importDefault(697) /* metro dependency 697: native */).radii.xs; const INTERACTIVE_TEXT_ACTIVE = (importDefault(697) /* metro dependency 697: native */).colors.INTERACTIVE_TEXT_ACTIVE; object.backgroundColor = INTERACTIVE_TEXT_ACTIVE; return {draggedElement: {opacity: 0}, selectedBackgroundOverlay: {'position': 'absolute', 'top': 0, 'left': 0, 'right': 0, 'bottom': 0}, container: {'position': 'relative', 'overflow': 'visible'}, unreadIndicator: object, expandedChildrenWrapper: {'position': 'absolute', 'left': null, 'top': 0, 'right': 8, 'height': null, 'display': 'flex', 'flexDirection': 'row', 'alignItems': 'center', left: r2 + 16, height: r2}}; } function _fun109019(a0, a1, a2, a3) { // fn#109019, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:14592:804, offset: 0x02339c74, size: 300 bytes, params: 5, frame: 18 const object3 = {}; const object4 = {position: 'relative'}; let GUILD_BAR_ITEM_MARGIN = (importDefault(697) /* metro dependency 697: native */).modules.mobile.GUILD_BAR_ITEM_MARGIN; object4.paddingTop = GUILD_BAR_ITEM_MARGIN; GUILD_BAR_ITEM_MARGIN = (importDefault(697) /* metro dependency 697: native */).modules.mobile.GUILD_BAR_ITEM_MARGIN; object4.paddingBottom = GUILD_BAR_ITEM_MARGIN; object4.paddingLeft = 12; object4.height = a3; object4.width = a2 + GUILD_ITEM_HIT_SLOP.left + GUILD_ITEM_HIT_SLOP.right; object3.pressableWrapper = object4; const value3 = 'transparent'; object3.itemShape = {'position': 'relative', 'width': null, 'height': null, 'overflow': 'hidden', 'justifyContent': 'center', 'alignItems': 'center', width: a2, height: a2, backgroundColor: a1 ? value3 : (importDefault(697) /* metro dependency 697: native */).colors.MOBILE_GUILDBAR_ICON_BACKGROUND_DEFAULT}; object3.itemShapeSelected = {backgroundColor: a0 ? a1 ? value3 : (importDefault(697) /* metro dependency 697: native */).colors.BACKGROUND_SURFACE_HIGH : (importDefault(697) /* metro dependency 697: native */).colors.BACKGROUND_BRAND}; return object3; } function GuildsBarAnimatedItemWrapper({id, selected, unread, circle, children, externalChildren, expandedChildren, config, label, hint, draggable, cutouts, isDragTarget, dragState, isDragPreview, draggedItemSize, overState, styles, accessibilityActions, onAccessibilityAction, preventClipping, expanded, entering, exiting, layout, zIndex, sharedId}) { // fn#109020, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:14592:4760, offset: 0x02339da0, size: 1626 bytes, params: 2, frame: 50 const env0_3 = hint; draggable = !(draggable === undefined) && draggable; isDragTarget = !(isDragTarget === undefined) && isDragTarget; isDragPreview = !(isDragPreview === undefined) && isDragPreview; draggedItemSize = draggedItemSize === undefined ? 0 : draggedItemSize; const env0_9 = styles; preventClipping = !(preventClipping === undefined) && preventClipping; zIndex = zIndex === undefined ? 0 : zIndex; const value9 = useGuildWrapperSize(); const useTokenModule = require(3860) /* metro dependency 3860: useToken */; let useToken = useTokenModule.useToken; const GUILD_BAR_ITEM_SIZE = (importDefault(697) /* metro dependency 697: native */).modules.mobile.GUILD_BAR_ITEM_SIZE; const value10 = Reflect.apply(useToken, useTokenModule, [GUILD_BAR_ITEM_SIZE]); const styles2 = useStyles(value9); const env0_15 = styles2; const value11 = (importDefault(14396) /* metro dependency 14396: usePressability */)(config); const moduleValue2 = useTokenModule; useToken = moduleValue2.useToken; const GUILD_ITEM_SELECTED_BORDER_RADIUS = (importDefault(697) /* metro dependency 697: native */).modules.mobile.GUILD_ITEM_SELECTED_BORDER_RADIUS; const value12 = Reflect.apply(useToken, moduleValue2, [GUILD_ITEM_SELECTED_BORDER_RADIUS]); const reanimatedRexportModule = require(4017) /* metro dependency 4017: ReanimatedRexport */; const useAnimatedStyle = reanimatedRexportModule.useAnimatedStyle; const closure = GuildsBarAnimatedItemWrapperW; const object2 = {}; object2.withSpring = (require(4577) /* metro dependency 4577: spring */).withSpring; object2.circle = circle; object2.guildItemSelectedBorderRadius = value12; object2.guildItemSize = value10; object2.CORNER_SPRING_PHYSICS = env0_9; closure.__closure = object2; closure.__workletHash = 15930523896348; closure.__initData = env0_15; const value13 = Reflect.apply(useAnimatedStyle, reanimatedRexportModule, [closure]); const binding = env0_3; const useContext = binding.useContext; const HomeDrawerStateContext = (require(14374) /* metro dependency 14374: useHomeDrawerGesture */).HomeDrawerStateContext; const {guildsBarLabelDrawerStyle, guildsBarIconDrawerStyle, guildsBarUnreadDrawerStyle} = Reflect.apply(useContext, binding, [HomeDrawerStateContext]); const value15 = env0_3.useMemo(_fun109022, [isDragTarget, dragState, draggedItemSize, overState, zIndex, value9]); const value16 = env0_3.useMemo(function() { return [styles.pressableWrapper, isDragTarget ? styles.draggedElement : undefined, IOS_POINTER_STYLE]; }, [styles.pressableWrapper, isDragTarget, styles2.draggedElement]); let r18 = !unread && !selected; r18 = !r18 ? isDragTarget : r18; r18 = !r18 ? isDragPreview : r18; const value19 = env0_3.useMemo(_fun109024, [r18, selected, sharedId, id]); const MobileHomeDrawerExperiment = (require(4013) /* metro dependency 4013: HomeDrawerExperiment */).MobileHomeDrawerExperiment; const useConfig = MobileHomeDrawerExperiment.useConfig; const enableHome = Reflect.apply(useConfig, MobileHomeDrawerExperiment, [{location: 'guilds_bar'}]).enableHome; const env0_18 = env0_3.useRef(undefined); env0_3.useEffect(_fun109025, [expanded]); const value23 = env0_3.useMemo(_fun109026, [hint, draggable, accessibilityActions != null && accessibilityActions.length > 0]); const ReanimatedNativeView = importDefault(8141) /* metro dependency 8141: ReanimatedNativeView */; const items4 = [enableHome ? styles2.container : null, value15]; const defaultImport2 = ReanimatedNativeView; const r12 = enableHome ? guildsBarIconDrawerStyle : null; const NativeView = importDefault(6821) /* metro dependency 6821: NativeView */; const defaultImport3Props = {...value11}; defaultImport3Props['style'] = value16; defaultImport3Props['accessibilityLabel'] = label; defaultImport3Props['accessible'] = true; defaultImport3Props['accessibilityRole'] = 'button'; defaultImport3Props['accessibilityState'] = {selected: selected, expanded: expanded}; defaultImport3Props['hitSlop'] = GUILD_ITEM_HIT_SLOP; defaultImport3Props['accessibilityHint'] = value23.length > 0 ? value23 : undefined; defaultImport3Props['collapsable'] = false; defaultImport3Props['accessibilityActions'] = accessibilityActions; defaultImport3Props['onAccessibilityAction'] = onAccessibilityAction; const items2 = [externalChildren]; const defaultImport4 = ReanimatedNativeView; const items3 = [{position: 'absolute'}]; items3[1] = enableHome ? guildsBarUnreadDrawerStyle : null; const TransitionItem = (require(4508) /* metro dependency 4508: TransitionGroup */).TransitionItem; items2[1] = ((Component) => )(defaultImport4); const ClipViewAnimated = (require(7599) /* metro dependency 7599: ClipView */).ClipViewAnimated; items2[2] = {!isDragTarget && children}; return ( {((Component) => {items2})(defaultImport2)} {enableHome ? {expandedChildren} : null} ); } function useGuildsBarAnimatedWrapperStyles() { // fn#109027, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:14592:7576, offset: 0x0233a70c, size: 129 bytes, params: 1, frame: 20 const value = a0; const r0 = value !== undefined ? value : {}; let disableSelectedColor = r0.disableSelectedColor; disableSelectedColor = !(disableSelectedColor === undefined) && disableSelectedColor; let disableBGColor = r0.disableBGColor; disableBGColor = !(disableBGColor === undefined) && disableBGColor; const useTokenModule = require(3860) /* metro dependency 3860: useToken */; const useToken = useTokenModule.useToken; const GUILD_BAR_ITEM_SIZE = (importDefault(697) /* metro dependency 697: native */).modules.mobile.GUILD_BAR_ITEM_SIZE; return useStyles(disableSelectedColor, disableBGColor, Reflect.apply(useToken, useTokenModule, [GUILD_BAR_ITEM_SIZE]), useGuildWrapperSize()); } function _fun109013() { // fn#109013, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:14592:2851, offset: 0x023398c1, size: 120 bytes, params: 1, frame: 14 const items2 = [styles.unreadIndicator]; const object2 = {height: env0_7, marginTop: env0_7 / 2 * -1}; const binding = env0_2; const value = environment.__proto__; const TransitionStates = (require(4508) /* metro dependency 4508: TransitionGroup */).TransitionStates; const YEETED = TransitionStates.YEETED; object2.marginLeft = binding !== YEETED ? 0 : -4; items2[1] = object2; return items2; } function UnreadIndicatorP(a0) { // fn#109014, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:14592:3001, owner: UnreadIndicator.p, offset: 0x02339939, size: 247 bytes, params: 2, frame: 24 var object; var object3; var value3; if (env0_6) { object = {animations: {}, initialValues: {}}; } else if (sharedId == null) { object3 = {}; value3 = environment.__proto__; object3.originY = (require(4577) /* metro dependency 4577: spring */).withSpring(a0.targetOriginY, env1_10, 'animate-always'); object3.originX = (require(4577) /* metro dependency 4577: spring */).withSpring(a0.targetOriginX, env1_10, 'animate-always'); object3.height = (require(4577) /* metro dependency 4577: spring */).withSpring(a0.targetHeight, env1_10, 'animate-always'); object = {animations: object3, initialValues: {'height': 8, 'originY': null, 'originX': -12, originY: env0_4 / 2}}; } else if (sharedId.get() !== id) { object = {animations: {}, initialValues: {}}; } else { object3 = {}; value3 = environment.__proto__; object3.originY = (require(4577) /* metro dependency 4577: spring */).withSpring(a0.targetOriginY, env1_10, 'animate-always'); object3.originX = (require(4577) /* metro dependency 4577: spring */).withSpring(a0.targetOriginX, env1_10, 'animate-always'); object3.height = (require(4577) /* metro dependency 4577: spring */).withSpring(a0.targetHeight, env1_10, 'animate-always'); object = {animations: object3, initialValues: {'height': 8, 'originY': null, 'originX': -12, originY: env0_4 / 2}}; } return object; } function UnreadIndicator_({targetOriginY, targetOriginX, targetHeight, currentHeight, currentOriginY, currentOriginX}) { // fn#109015, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:14592:3521, owner: UnreadIndicator._, offset: 0x02339a30, size: 196 bytes, params: 2, frame: 23 const object = {}; object.originY = (require(4577) /* metro dependency 4577: spring */).withSpring(targetOriginY, env1_10, 'animate-always'); object.originX = (require(4577) /* metro dependency 4577: spring */).withSpring(targetOriginX, env1_10, 'animate-always'); object.height = (require(4577) /* metro dependency 4577: spring */).withSpring(targetHeight, env1_10, 'animate-always'); return {animations: object, initialValues: {height: currentHeight, originY: currentOriginY, originX: currentOriginX}, callback: callback_109016}; } function GuildsBarAnimatedItemWrapperW() { // fn#109021, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:14592:5358, owner: GuildsBarAnimatedItemWrapper.W, offset: 0x0233a3fa, size: 82 bytes, params: 1, frame: 17 const springModule = require(4577) /* metro dependency 4577: spring */; return {borderRadius: springModule.withSpring(circle ? env0_14 / 2 : env0_16, env1_9, 'animate-always')}; } function _fun109022() { // fn#109022, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:14592:5751, offset: 0x0233a44c, size: 182 bytes, params: 1, frame: 7 const r4 = isDragTarget ? dragState !== 'dragging' ? overState == null || overState === 'self' ? 'none' : dragState === 'dragging' ? 'drag-target' : 'none' : overState !== 'self' ? 'hide' : overState == null || overState === 'self' ? 'none' : dragState === 'dragging' ? 'drag-target' : 'none' : overState == null || overState === 'self' ? 'none' : dragState === 'dragging' ? 'drag-target' : 'none'; const value7 = 0; return {height: r4 === 'drag-target' ? env0_13 + draggedItemSize : r4 === 'hide' ? 0 : env0_13, top: r4 !== 'drag-target' ? value7 : overState === 'before' ? draggedItemSize : overState !== 'convert-before' ? value7 : draggedItemSize, zIndex: zIndex}; } function _fun109024() { // fn#109024, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:14592:6135, offset: 0x0233a53b, size: 44 bytes, params: 1, frame: 3 if (env0_17) { return undefined; } return {selected: selected, sharedId: sharedId, id: id}; } function _fun109025() { // fn#109025, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:14592:6314, offset: 0x0233a567, size: 195 bytes, params: 1, frame: 17 var expandedBinding; var value2; var intl; var string; var t; let current = env0_18.current; if (current !== undefined) { current = env0_18.current; expandedBinding = expanded; if (current !== expandedBinding) { value2 = environment.__proto__; intl = (require(1244) /* metro dependency 1244: indexNative */).intl; string = intl.string; expandedBinding = expanded; t = (require(1244) /* metro dependency 1244: indexNative */).t; (require(3869) /* metro dependency 3869: AccessibilityAnnouncerAndroid */).AccessibilityAnnouncer.announce(Reflect.apply(string, intl, [expandedBinding ? t.CUnsOR : t.jsudFd])); env0_18.current = expanded; } } else { env0_18.current = expanded; } } function _fun109026() { // fn#109026, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:14592:6552, offset: 0x0233a62a, size: 226 bytes, params: 1, frame: 17 var push; var value4; const intl = (require(1244) /* metro dependency 1244: indexNative */).intl; const t = (require(1244) /* metro dependency 1244: indexNative */).t; const items2 = []; if (hint != null && hint.length > 0) { items2.push(hint); } if (draggable) { push = items2.push; value4 = environment.__proto__; Reflect.apply(push, items2, [intl.string(t.BGMUFB)]); } if (env0_19) { push = items2.push; value = environment.__proto__; Reflect.apply(push, items2, [intl.string(t.X2x0MF)]); } return items2.join('. '); } function _Callback(a0) { // fn#109016, source: /ci/build/discord/discord/discord_android_rn/android/app/src/main/assets/index.android.bundle:14592:3829, owner: UnreadIndicator._.callback, offset: 0x02339af4, size: 113 bytes, params: 2, frame: 15 let value = a0; const binding = env1_2; const TransitionStates = (require(4508) /* metro dependency 4508: TransitionGroup */).TransitionStates; const YEETED = TransitionStates.YEETED; if (binding === YEETED && value && cleanUp != null) { value = require(4017) /* metro dependency 4017: ReanimatedRexport */; value.runOnJS(cleanUp)(); } }