local v0 = require(script.Parent.Parent.Dev.JestConfigs);
return {
    displayName = "PhoneUpsell",
    testMatch = {
        "**/*.test"
    },
    setupFilesAfterEnv = {
        v0.setupFiles.LogHandler,
        v0.setupFiles.UIBloxInitializer,
        v0.setupFiles.createPromiseRejectionHandler()
    }
};


return require(script:FindFirstAncestor("PlaceInfoRodux").Parent.Rodux).makeActionCreator(script.Name, function(v0)
    return {
        placeIds = v0
    };
end);


return require(script:FindFirstAncestor("PlaceInfoRodux").Parent.Rodux).makeActionCreator(script.Name, function(v0)
    return {
        placeInfos = v0
    };
end);


return require(script:FindFirstAncestor("PlaceInfoRodux").Parent.Rodux).makeActionCreator(script.Name, function(v0)
    return {
        placesInfos = v0
    };
end);


return {
    ReceivedMultiplePlaceInfos = require(script.ReceivedMultiplePlaceInfos),
    ReceivedPlacesInfos = require(script.ReceivedPlacesInfos),
    RequestMultiplePlaceInfos = require(script.RequestMultiplePlaceInfos),
    FailedToFetchMultiplePlaceInfos = require(script.FailedToFetchMultiplePlaceInfos)
};


local l_MockId_0 = require(script:FindFirstAncestor("PlaceInfoRodux").Parent.Dev.UnitTestHelpers).MockId;
local v1 = require(script.Parent.PlaceInfoModel);
local v3 = {
    mock = function()
        local v2 = v1.new();
        v2.builder = "builder";
        v2.builderId = l_MockId_0();
        v2.description = "description";
        v2.imageToken = l_MockId_0();
        v2.isPlayable = true;
        v2.name = "name";
        v2.placeId = l_MockId_0();
        v2.price = 0;
        v2.reasonProhibited = nil;
        v2.universeId = l_MockId_0();
        v2.universeRootPlaceId = l_MockId_0();
        v2.url = "url";
        return v2;
    end
};
setmetatable(v3, {
    __index = v1
});
return v3;


return {
    new = function()
        return {};
    end,
    fromWeb = function(v0)
        local v1 = v0 or {};
        v1.placeId = tostring(v1.placeId);
        return v1;
    end
};


return {
    PlaceInfoModel = require(script.PlaceInfoModel),
    MockPlaceInfoModel = require(script.MockPlaceInfoModel)
};


local l_script_FirstAncestor_0 = script:FindFirstAncestor("PlaceInfoRodux");
local l_Immutable_0 = require(l_script_FirstAncestor_0.Parent.AppCommonLib).Immutable;
local l_RequestMultiplePlaceInfos_0 = require(l_script_FirstAncestor_0.Actions).RequestMultiplePlaceInfos;
local l_FailedToFetchMultiplePlaceInfos_0 = require(l_script_FirstAncestor_0.Actions).FailedToFetchMultiplePlaceInfos;
local l_ReceivedMultiplePlaceInfos_0 = require(l_script_FirstAncestor_0.Actions).ReceivedMultiplePlaceInfos;
return function(v5, v6)
    v5 = v5 or {};
    if v6.type == l_RequestMultiplePlaceInfos_0.name then
        local v7 = {};
        for _, v9 in ipairs(v6.placeIds) do
            v7[v9] = true;
        end;
        return l_Immutable_0.JoinDictionaries(v5, v7);
    elseif v6.type == l_ReceivedMultiplePlaceInfos_0.name then
        local v10 = {};
        for _, v12 in ipairs(v6.placeInfos) do
            v10[v12.placeId] = false;
        end;
        return l_Immutable_0.JoinDictionaries(v5, v10);
    elseif v6.type == l_FailedToFetchMultiplePlaceInfos_0.name then
        local v13 = {};
        for _, v15 in ipairs(v6.placeIds) do
            v13[v15] = false;
        end;
        return l_Immutable_0.JoinDictionaries(v5, v13);
    else
        return v5;
    end;
end;


local l_script_FirstAncestor_0 = script:FindFirstAncestor("PlaceInfoRodux");
local l_Parent_0 = l_script_FirstAncestor_0.Parent;
local l_ReceivedMultiplePlaceInfos_0 = require(l_script_FirstAncestor_0.Actions).ReceivedMultiplePlaceInfos;
local l_Immutable_0 = require(l_Parent_0.AppCommonLib).Immutable;
return function(v4, v5)
    v4 = v4 or {};
    if v5.type == l_ReceivedMultiplePlaceInfos_0.name then
        local v6 = {};
        for _, v8 in ipairs(v5.placeInfos) do
            v6[v8.placeId] = v8;
        end;
        v4 = l_Immutable_0.JoinDictionaries(v4, v6);
    end;
    return v4;
end;


local l_script_FirstAncestor_0 = script:FindFirstAncestor("PlaceInfoRodux");
local l_Parent_0 = l_script_FirstAncestor_0.Parent;
local l_Immutable_0 = require(l_Parent_0.AppCommonLib).Immutable;
local l_ReceivedPlacesInfos_0 = require(l_script_FirstAncestor_0.Actions).ReceivedPlacesInfos;
local l_ConvertUniverseIdToString_0 = require(l_Parent_0.SharedFlags).ConvertUniverseIdToString;
return function(v5, v6)
    v5 = v5 or {};
    if v6.type == l_ReceivedPlacesInfos_0.name then
        for _, v8 in pairs(v6.placesInfos) do
            v5 = l_Immutable_0.Set(v5, l_ConvertUniverseIdToString_0(v8.universeId), v8);
        end;
    end;
    return v5;
end;


return {
    PlaceInfosReducer = require(script.PlaceInfosReducer),
    PlaceInfosAsyncReducer = require(script.PlaceInfosAsyncReducer),
    UniversePlaceInfos = require(script.UniversePlaceInfos)
};


local l_Url_0 = require(script:FindFirstAncestor("PlaceInfoRodux").Parent.Http).Url;
return function(v1, v2)
    return v1(string.format("%s/v1/games/multiget-place-details?%s", l_Url_0.GAME_URL, (l_Url_0:makeQueryString({
        placeIds = v2
    }))), "GET");
end;


return {
    Actions = require(script.Actions),
    Models = require(script.Models),
    Reducers = require(script.Reducers),
    Thunks = require(script.Thunks)
};


return {
    UnplayableOtherReason = "UnplayableOtherReason",
    Playable = "Playable",
    GuestProhibited = "GuestProhibited",
    GameUnapproved = "GameUnapproved",
    IncorrectConfiguration = "IncorrectConfiguration",
    UniverseRootPlaceIsPrivate = "UniverseRootPlaceIsPrivate",
    InsufficientPermissionFriendsOnly = "InsufficientPermissionFriendsOnly",
    InsufficientPermissionGroupOnly = "InsufficientPermissionGroupOnly",
    DeviceRestricted = "DeviceRestricted",
    UnderReview = "UnderReview",
    PurchaseRequired = "PurchaseRequired",
    AccountRestricted = "AccountRestricted",
    TemporarilyUnavailable = "TemporarilyUnavailable",
    ComplianceBlocked = "ComplianceBlocked",
    ContextualPlayabilityAgeRecommendationParentalControls = "ContextualPlayabilityAgeRecommendationParentalControls",
    ContextualPlayabilityRegionalAvailability = "ContextualPlayabilityRegionalAvailability",
    ContextualPlayabilityRegionalCompliance = "ContextualPlayabilityRegionalCompliance",
    ContextualPlayabilityUnverifiedSeventeenPlusUser = "ContextualPlayabilityUnverifiedSeventeenPlusUser"
};


return {
    PlayabilityStatusEnum = require(script.PlayabilityStatusEnum)
};


local v0 = require(script.Parent.Parent.Lumberyak).Logger.new(nil, "PlayabilityRodux");
v0:addSink({
    maxLevel = v0.Levels.Warning,
    log = function(_, v2, _)
        print(v2);
    end
});
return v0;


local l_Url_0 = require(script:FindFirstAncestor("PlayabilityRodux").Parent.Http).Url;
return function(v1, v2)
    assert(type(v2) == "table", "GamesMultigetPlayabilityStatus request expects universeId to be a table");
    return v1(string.format("%s/v1/games/multiget-playability-status?universeIds=%s", l_Url_0.GAME_URL, (table.concat(v2, ","))), "GET");
end;


local l_script_FirstAncestor_0 = script:FindFirstAncestor("PlayabilityRodux");
local v1 = require(l_script_FirstAncestor_0.Enums.PlayabilityStatusEnum);
local v2 = require(l_script_FirstAncestor_0.Parent.Result);
local v3 = {
    new = function()
        return {};
    end
};
v3.mock = function()
    local v4 = v3.new();
    v4.universeId = "149757";
    v4.isPlayable = true;
    v4.playabilityStatus = v1.Playable;
    return v4;
end;
v3.fromJsonData = function(v5)
    if type(v5.universeId) ~= "number" and type(v5.universeId) ~= "string" then
        return v2.error("PlayabilityStatus.fromJsonData expects universeId to be a number or a string");
    elseif type(v5.isPlayable) ~= "boolean" then
        return v2.error("PlayabilityStatus.fromJsonData expects isPlayable to be a boolean");
    elseif type(v5.playabilityStatus) ~= "string" then
        return v2.error("PlayabilityStatus.fromJsonData expects playabilityStatus to be a string");
    else
        local v6 = v3.new();
        v6.universeId = tostring(v5.universeId);
        v6.isPlayable = v5.isPlayable;
        v6.playabilityStatus = v5.playabilityStatus;
        return v2.success(v6);
    end;
end;
return v3;


local l_script_FirstAncestor_0 = script:FindFirstAncestor("PlayabilityRodux");
local l_Immutable_0 = require(l_script_FirstAncestor_0.Parent.AppCommonLib).Immutable;
local v2 = require(l_script_FirstAncestor_0.PlayabilityStatus.SetPlayabilityStatus);
return function(v3, v4)
    v3 = v3 or {};
    if v4.type == v2.name then
        v3 = l_Immutable_0.JoinDictionaries(v3, v4.playabilityStatus);
    end;
    return v3;
end;


return require(script:FindFirstAncestor("PlayabilityRodux").Parent.Rodux).makeActionCreator(script.Name, function(v0)
    assert(type(v0) == "table", "SetPlayabilityStatus action expects playabilityStatus to be a table");
    return {
        playabilityStatus = v0
    };
end);


local _ = require(script.PlayabilityStatusModel);
return {
    ApiFetchPlayabilityStatus = require(script.ApiFetchPlayabilityStatus),
    PlayabilityStatusReducer = require(script.PlayabilityStatusReducer)
};


return {
    Enums = require(script.Enums),
    PlayabilityStatus = require(script.PlayabilityStatus),
    ["jest.config"] = script["jest.config"]
};


local v0 = require(script.Parent.Parent.Dev.JestConfigs);
return {
    displayName = "PlayabilityRodux",
    setupFilesAfterEnv = {
        v0.setupFiles.LogHandler,
        v0.setupFiles.UIBloxInitializer,
        v0.setupFiles.createPromiseRejectionHandler()
    }
};


local l_Parent_0 = script.Parent.Parent.Parent;
local l_EventIngestService_0 = game:GetService("EventIngestService");
local l_RbxAnalyticsService_0 = game:GetService("RbxAnalyticsService");
local v3 = require(l_Parent_0.Analytics);
local v4 = v3.Analytics.new(l_RbxAnalyticsService_0);
local l_getPlatformTarget_0 = v3.getPlatformTarget;
return {
    Diag = v4.Diag,
    EventStream = {
        setRBXEventStream = function(_, v7, v8, v9)
            l_EventIngestService_0:SetRBXEventStream(l_getPlatformTarget_0(), v7, v8, v9 or {});
        end,
        sendEventDeferred = function(_, v11, v12, v13)
            l_EventIngestService_0:SendEventDeferred(l_getPlatformTarget_0(), v11, v12, v13 or {});
        end
    }
};


return require(script.Parent.Parent.Parent.enumerate)(script.Name, {
    RequestFriendship = "RequestFriendship",
    Unfriend = "Unfriend",
    AcceptFriendRequest = "AcceptFriendRequest",
    IgnoreFriendRequest = "IgnoreFriendRequest",
    BlockPlayer = "BlockPlayer",
    ReportPlayer = "ReportPlayer",
    JoinExperience = "JoinExperience",
    ViewExperienceDetails = "ViewExperienceDetails",
    ViewPlatformProfile = "ViewPlatformProfile"
});


local l_Parent_0 = script.Parent.Parent.Parent;
local v1 = require(script.Parent.EventNames);
local l_Enums_0 = require(l_Parent_0.SocialLuaAnalytics).Analytics.Enums;
local l_Contexts_0 = l_Enums_0.Contexts;
local l_SubPages_0 = l_Enums_0.SubPages;
local l_EventTypes_0 = l_Enums_0.EventTypes;
local function v7(v6)
    return v6;
end;
return {
    [v1.RequestFriendship] = {
        context = l_Contexts_0.FriendsLanding,
        eventType = l_EventTypes_0.ButtonClick,
        additionalInfo = {
            subpage = l_SubPages_0.PlayerContextualMenu,
            btn = "addFriend"
        },
        formatRulesForAdditionalInfo = {
            profileUserId = v7
        }
    },
    [v1.Unfriend] = {
        context = l_Contexts_0.FriendsLanding,
        eventType = l_EventTypes_0.ButtonClick,
        additionalInfo = {
            subpage = l_SubPages_0.PlayerContextualMenu,
            btn = "unFriend"
        },
        formatRulesForAdditionalInfo = {
            profileUserId = v7
        }
    },
    [v1.AcceptFriendRequest] = {
        context = l_Contexts_0.FriendsLanding,
        eventType = l_EventTypes_0.ButtonClick,
        additionalInfo = {
            subpage = l_SubPages_0.PlayerContextualMenu,
            btn = "acceptFriend"
        },
        formatRulesForAdditionalInfo = {
            profileUserId = v7
        }
    },
    [v1.IgnoreFriendRequest] = {
        context = l_Contexts_0.FriendsLanding,
        eventType = l_EventTypes_0.ButtonClick,
        additionalInfo = {
            subpage = l_SubPages_0.PlayerContextualMenu,
            btn = "ignoreFriend"
        },
        formatRulesForAdditionalInfo = {
            profileUserId = v7
        }
    },
    [v1.BlockPlayer] = {
        context = l_Contexts_0.FriendsLanding,
        eventType = l_EventTypes_0.ButtonClick,
        additionalInfo = {
            subpage = l_SubPages_0.PlayerContextualMenu,
            btn = "block"
        },
        formatRulesForAdditionalInfo = {
            profileUserId = v7
        }
    },
    [v1.ReportPlayer] = {
        context = l_Contexts_0.FriendsLanding,
        eventType = l_EventTypes_0.ButtonClick,
        additionalInfo = {
            subpage = l_SubPages_0.PlayerContextualMenu,
            btn = "report"
        },
        formatRulesForAdditionalInfo = {
            profileUserId = v7
        }
    },
    [v1.JoinExperience] = {
        context = l_Contexts_0.FriendsLanding,
        eventType = l_EventTypes_0.ButtonClick,
        additionalInfo = {
            subpage = l_SubPages_0.PlayerContextualMenu,
            btn = "joinUser"
        },
        formatRulesForAdditionalInfo = {
            profileUserId = v7
        }
    },
    [v1.ViewExperienceDetails] = {
        context = l_Contexts_0.FriendsLanding,
        eventType = l_EventTypes_0.ButtonClick,
        additionalInfo = {
            subpage = l_SubPages_0.PlayerContextualMenu,
            btn = "viewExperienceDetails"
        },
        formatRulesForAdditionalInfo = {
            profileUserId = v7
        }
    },
    [v1.ViewPlatformProfile] = {
        context = l_Contexts_0.FriendsLanding,
        eventType = l_EventTypes_0.ButtonClick,
        additionalInfo = {
            subpage = l_SubPages_0.PlayerContextualMenu,
            btn = "viewPlatformProfile"
        },
        formatRulesForAdditionalInfo = {
            profileUserId = v7
        }
    }
};


local l_Parent_0 = script.Parent.Parent.Parent;
return require(l_Parent_0.React).createContext({
    fireEvent = require(l_Parent_0.Dash).noop
});


return {
    setupFireEvent = require(script.setupFireEvent),
    Context = require(script.PlayerContextualMenuAnalyticsContext),
    EventNames = require(script.EventNames),
    AnalyticsService = require(script.AnalyticsService)
};


local v0 = require(script.Parent.Parent.Parent.SocialLuaAnalytics);
local l_fireDiagCounter_0 = v0.Analytics.FireEvent.fireDiagCounter;
local l_fireEventStream_0 = v0.Analytics.FireEvent.fireEventStream;
local v3 = require(script.Parent.EventStreamActionList);
local v4 = require(script.Parent.DiagActionList);
return function(v5)
    local v6 = l_fireEventStream_0({
        eventStreamImpl = v5.analytics.EventStream,
        eventList = v3,
        infoForAllEvents = v5.infoForAllEvents
    });
    local v7 = l_fireDiagCounter_0({
        diagImpl = v5.analytics.Diag,
        eventList = v4
    });
    return function(v8, v9)
        if not (not v7 or not v4[v8]) then
            v7(v8);
        end;
        return v6(v8, v9);
    end;
end;


local v0 = require(script:FindFirstAncestor("PlayerContextualMenu").Parent.React);
local v1 = require(script.Parent.HttpRequestContext);
return function()
    return v0.useContext(v1);
end;


local l_Parent_0 = script.Parent.Parent.Parent;
local v1 = require(l_Parent_0.React);
local v2 = require(l_Parent_0.Dash);
local l_useDesignTokens_0 = require(l_Parent_0.Style).useDesignTokens;
local l_BaseMenu_0 = require(l_Parent_0.UIBlox).App.Menu.BaseMenu;
local v5 = require(script.Parent.PlayerContextualMenuHeader);
local v6 = {
    width = UDim.new(1, 0)
};
return function(v7)
    local v8 = v2.join(v6, v7);
    local v10 = l_useDesignTokens_0(function(v9)
        return {
            overlayBackgroundColor3 = v9.Semantic.Color.Common.Overlay.Color3,
            overlayBackgroundTransparency = v9.Semantic.Color.Common.Overlay.Transparency,
            backgroundColor = v9.Semantic.Color.Background.Default.Color3,
            backgroundTransparency = v9.Semantic.Color.Background.Default.Transparency,
            menuCornerRadius = v9.Semantic.Radius.Medium
        };
    end);
    local v11, v12 = v1.useState(0);
    return v1.createElement("Frame", {
        Size = UDim2.new(1, 0, 1, 0),
        BackgroundColor3 = v10.overlayBackgroundColor3,
        BackgroundTransparency = v10.overlayBackgroundTransparency,
        ZIndex = -1
    }, {
        PositionFrame = v1.createElement("Frame", {
            AutomaticSize = Enum.AutomaticSize.Y,
            Size = UDim2.new(v8.width, UDim.new(0, 0)),
            AnchorPoint = Vector2.new(0.5, 0.5),
            Position = UDim2.new(0.5, 0, 0.5, 0),
            BackgroundTransparency = v10.backgroundTransparency,
            BackgroundColor3 = v10.backgroundColor,
            ZIndex = 0
        }, {
            Corner = v1.createElement("UICorner", {
                CornerRadius = UDim.new(0, v10.menuCornerRadius)
            }),
            BaseMenu = v1.createElement(l_BaseMenu_0, {
                topElementRounded = false,
                buttonProps = v8.buttonProps,
                width = v8.width,
                enableTokenOverride = true,
                renderHeader = v1.useCallback(function()
                    return v1.createElement(v5, v2.join(v8.headerProps, {
                        onHeaderHeightChanged = v12
                    }));
                end, {
                    v8.headerProps
                }),
                headerHeight = v11
            })
        })
    });
end;


local l_script_FirstAncestor_0 = script:FindFirstAncestor("PlayerContextualMenu");
local v1 = require(l_script_FirstAncestor_0.Parent.React);
local v2 = require(script.Parent.HttpRequest.HttpRequestContext);
local v3 = require(script.Parent.HttpRequest.DefaultHttpRequestInstance);
local v4 = require(l_script_FirstAncestor_0.Components.PlayerContextualMenuContainer);
return function(v5)
    return v1.createElement(v2.Provider, {
        value = v5.httpRequest or v3
    }, {
        app = v1.createElement(v4, v5)
    });
end;


local l_Parent_0 = script.Parent.Parent.Parent;
local v1 = require(l_Parent_0.React);
local v2 = require(l_Parent_0.Style);
local v3 = require(l_Parent_0.UIBlox);
local l_useDesignTokens_0 = v2.useDesignTokens;
local l_PlayerName_0 = v3.App.Indicator.PlayerName;
local l_PlayerContext_0 = v3.App.Indicator.PlayerContext;
local l_Button_0 = v3.App.Button.Button;
local l_ButtonType_0 = v3.App.Button.Enum.ButtonType;
return function(v9)
    local v11 = l_useDesignTokens_0(function(v10)
        return {
            contextTextSpacing = v10.Global.Space_75,
            joinEventSpacing = v10.Global.Space_150,
            padding = v10.Global.Space_200,
            joinEventButtonHeight = v10.Global.Size_600
        };
    end);
    return v1.createElement("Frame", {
        AutomaticSize = Enum.AutomaticSize.Y,
        Size = UDim2.new(1, 0, 0, 0),
        BackgroundTransparency = 1,
        [v1.Change.AbsoluteSize] = function(v12)
            v9.onHeaderHeightChanged(v12.AbsoluteSize.Y);
        end
    }, {
        UIListLayout = v1.createElement("UIListLayout", {
            FillDirection = Enum.FillDirection.Vertical,
            SortOrder = Enum.SortOrder.LayoutOrder,
            HorizontalAlignment = Enum.HorizontalAlignment.Left
        }),
        UIPadding = v1.createElement("UIPadding", {
            PaddingTop = UDim.new(0, v11.padding),
            PaddingBottom = UDim.new(0, v11.padding),
            PaddingLeft = UDim.new(0, v11.padding),
            PaddingRight = UDim.new(0, v11.padding)
        }),
        PlayerName = v1.createElement(l_PlayerName_0, {
            automaticSize = Enum.AutomaticSize.XY,
            displayNameItem = v9.displayNameItem,
            layoutOrder = 1,
            userNameItem = v9.userNameItem,
            vendorNameItem = v9.vendorNameItem
        }),
        ContextTextSpacing = if not v9.contextText then nil else v1.createElement("Frame", {
            BackgroundTransparency = 1,
            LayoutOrder = 2,
            Size = UDim2.new(1, 0, 0, v11.contextTextSpacing)
        }),
        PlayerContext = if not v9.contextText then nil else v1.createElement(l_PlayerContext_0, {
            icon = v9.contextIcon,
            iconColor = v9.contextIconColor,
            iconTransparency = v9.contextIconTransparency,
            text = v9.contextText,
            layoutOrder = 3,
            Selectable = false
        }),
        JoinButton = (function()
            if not v9.renderJoinEventButton and not v9.joinEventText then
                return nil;
            else
                return v1.createElement("Frame", {
                    LayoutOrder = 5,
                    Size = UDim2.new(1, 0, 0, 0),
                    AutomaticSize = Enum.AutomaticSize.Y,
                    BackgroundTransparency = 1
                }, {
                    UIListLayout = v1.createElement("UIListLayout", {
                        FillDirection = Enum.FillDirection.Vertical,
                        SortOrder = Enum.SortOrder.LayoutOrder,
                        HorizontalAlignment = Enum.HorizontalAlignment.Left
                    }),
                    JoinEventSpacing = v1.createElement("Frame", {
                        BackgroundTransparency = 1,
                        LayoutOrder = 4,
                        Size = UDim2.new(1, 0, 0, v11.joinEventSpacing)
                    }),
                    JoinButton = if not v9.renderJoinEventButton then v1.createElement(l_Button_0, {
                        buttonType = l_ButtonType_0.PrimaryContextual,
                        onActivated = v9.joinEventOnActivated,
                        isLoading = false,
                        size = UDim2.new(1, 0, 0, v11.joinEventButtonHeight),
                        text = v9.joinEventText,
                        layoutOrder = 5
                    }) else v9.renderJoinEventButton()
                });
            end;
        end)()
    });
end;


local l_Images_0 = require(script:FindFirstAncestor("PlayerContextualMenu").Parent.UIBlox).App.ImageSet.Images;
local _ = require(script.Parent.Types);
return function(v2, v3)
    if v2 then
        if v2.status == "InGame" then
            return l_Images_0["icons/menu/games_small"], v3.iconEmphasis;
        elseif not (v2.status ~= "Online") or v2.status == "InStudio" then
            return l_Images_0["component_assets/circle_16"], v3.onlinePresence;
        end;
    end;
    return nil, nil;
end;


local _ = require(script.Parent.Types);
return function(v1)
    if not v1 then
        return "";
    elseif not (v1.status ~= "InGame") or v1.status == "InStudio" then
        return v1.locationString;
    elseif v1.status == "Online" then
        return "Online";
    else
        return "Offline";
    end;
end;


local _ = require(script.PlayerContextualMenuContainer);
return {
    PlayerContextualMenu = require(script.PlayerContextualMenuEntrypoint),
    PlayerContextualMenuComponent = require(script.PlayerContextualMenuComponent),
    PlayerContextualMenuHeader = require(script.PlayerContextualMenuHeader)
};


return require(script:FindFirstAncestor("PlayerContextualMenu").Parent.LuaSocialLibrariesDeps).NetworkingBlocking.config({
    roduxNetworking = require(script.Parent.RoduxNetworking)
});


return require(script:FindFirstAncestor("PlayerContextualMenu").Parent.LuaSocialLibrariesDeps).NetworkingFriends.config({
    roduxNetworking = require(script.Parent.RoduxNetworking)
});


return require(script:FindFirstAncestor("PlayerContextualMenu").Parent.LuaSocialLibrariesDeps).RoduxNetworking.config({
    keyPath = "EventReceievers" .. ".NetworkStatus",
    networkImpl = require(script.Parent.httpRequest)
});


local v0 = require(script:FindFirstAncestor("PlayerContextualMenu").Parent.HttpRequest);
return v0.config({
    requestFunction = v0.requestFunctions.HttpRbxApi,
    maxRetryCount = 0
});


local l_script_FirstAncestor_0 = script:FindFirstAncestor("PlayerContextualMenu");
local l_Parent_0 = l_script_FirstAncestor_0.Parent;
local v2 = require(l_Parent_0.Dash);
local v3 = require(l_Parent_0.Dev.Roact);
local v4 = require(l_Parent_0.Dev.SocialTestHelpers);
local v5 = require(l_Parent_0.UIBlox);
local v6 = require(l_Parent_0.Dev.RobloxAppUIBloxConfig);
local l_mockLocale_0 = v4.StoryHelpers.mockLocale;
v5.init(v6);
local l_AppStyleProvider_0 = v5.App.Style.AppStyleProvider;
v3.setGlobalConfig({
    elementTracing = true
});
local v9 = {
    Default = {
        themeName = "Light",
        fontName = "Gotham"
    },
    Light = {
        themeName = "Light",
        fontName = "Gotham"
    },
    Dark = {
        themeName = "Dark",
        fontName = "Gotham"
    }
};
local v10 = {
    language = "en-us"
};
return {
    name = "PlayerContextualMenu",
    storyRoot = l_script_FirstAncestor_0,
    roact = v3,
    mapDefinition = function(v11)
        return v2.join(v11, {
            controls = v2.join(v10, v11.controls)
        });
    end,
    mapStory = function(v12)
        return function(v13)
            return v3.createElement(l_AppStyleProvider_0, {
                style = not not v13 and v9[v13.theme] or v9.Default
            }, {
                Child = l_mockLocale_0(v12, v13)
            });
        end;
    end
};


local v0 = require(script:FindFirstAncestor("PlayerContextualMenu").Parent.Rodux);
return function()
    return v0.combineReducers({
        IsBlockedByMe = require(script.Parent.IsBlockedByMe)
    });
end;


local l_Parent_0 = script.Parent.Parent.Parent;
local v1 = require(l_Parent_0.React);
local v2 = require(l_Parent_0.RoactRodux);
local v3 = require(l_Parent_0.Rodux);
local v4 = require(l_Parent_0.Style);
local v5 = require(l_Parent_0.Localization);
local l_Signal_0 = require(l_Parent_0.Dev.AppCommonLib).Signal;
local v7 = require(l_Parent_0.Dev.RoactNavigation);
local function v9(v8)
    return v8;
end;
return function(v10, v11)
    return v1.createElement(v2.StoreProvider, {
        store = v3.Store.new(v9, {}, {
            v3.thunkMiddleware
        })
    }, {
        Navigation = v1.createElement(v7.Provider, {
            value = not not v11 and v11.navigation or {
                navigate = function()
                end
            }
        }, {
            UiModeStyle = v1.createElement(v4.UiModeStyleProvider, {
                style = {
                    themeName = "Dark",
                    fontName = "Gotham"
                }
            }, {
                DesignTokenProvider = v1.createElement(v4.DesignTokenProvider, {
                    tokenMappers = {}
                }, {
                    localization = v1.createElement(v5.LocalizationProvider, {
                        localization = {
                            Format = function(_, v13, _)
                                return v13;
                            end,
                            changed = l_Signal_0.new()
                        }
                    }, {
                        child = v10
                    })
                })
            })
        })
    });
end;


return {
    openPlayerContextualMenu = require(script.openPlayerContextualMenu),
    Component = require(script.Components).PlayerContextualMenu,
    installReducer = require(script.Reducers.installReducer),
    ["jest.config"] = script["jest.config"]
};


local v0 = require(script.Parent.Parent.Dev.JestConfigs);
return {
    displayName = "PlayerContextualMenu",
    setupFilesAfterEnv = {
        v0.setupFiles.LogHandler,
        v0.setupFiles.UIBloxInitializer,
        v0.setupFiles.createPromiseRejectionHandler()
    }
};


local l_Parent_0 = script:FindFirstAncestor("PlayerContextualMenu").Parent;
local v1 = require(l_Parent_0.CentralOverlay);
local v2 = require(l_Parent_0.RobloxAppEnums);
local _ = require(script.Parent.Components);
return function(v4)
    return function(v5)
        v5:dispatch(v1.Actions.SetCentralOverlay(v2.CentralOverlayType.PlayerContextualMenu, v4));
    end;
end;


local l_Parent_0 = script.Parent.Parent;
local l_MessageBus_0 = require(l_Parent_0.MessageBus).MessageBus;
local v2 = require(l_Parent_0.t);
local _ = require(script.Parent.PrefetchProtocolTypes);
local v4 = {
    POP_GUID_DESCRIPTOR = {
        fid = l_MessageBus_0.getMessageId("Prefetch", "popPendingPrefetchGuid"),
        validateParams = v2.table
    }
};
v4.__index = v4;
v4.new = function(v5)
    local v6 = {
        messageBus = v5 or l_MessageBus_0
    };
    setmetatable(v6, v4);
    return v6;
end;
v4.popPendingPrefetchGuid = function(v7)
    return v7.messageBus.call(v7.POP_GUID_DESCRIPTOR, {});
end;
v4.default = v4.new();
return v4;


local v0 = require(script.PrefetchProtocol);
local _ = require(script.PrefetchProtocol);
return {
    PrefetchProtocol = v0
};


game:DefineFastString("PremiumSponsoredExperienceInstances", "");
game:DefineFastInt("PremiumSponsoredExperienceWaitTimeSeconds", 5);
return {
    GetFStringPremiumSponsoredExperienceInstances = function()
        return game:GetFastString("PremiumSponsoredExperienceInstances");
    end,
    GetFIntPremiumSponsoredExperienceWaitTimeSeconds = function()
        return game:GetFastInt("PremiumSponsoredExperienceWaitTimeSeconds");
    end
};


local v0 = require(script.Parent.Flags);
local l_GetFStringPremiumSponsoredExperienceInstances_0 = v0.GetFStringPremiumSponsoredExperienceInstances;
local v2 = v0.GetFIntPremiumSponsoredExperienceWaitTimeSeconds();
local l_default_0 = require(script.Parent.Parent.LoggingProtocol).default;
local v4 = require(script.Parent.TelemetryConfig);
local l_Players_0 = game:GetService("Players");
local function v11(v6, v7)
    local l_Name_0 = v6.Name;
    local l_Video_0 = v6.Video;
    local l_LocalPlayer_0 = l_Players_0.LocalPlayer;
    if l_LocalPlayer_0 ~= nil then
        l_default_0:logRobloxTelemetryEvent(v4, nil, {
            place_id = tostring(game.PlaceId),
            universe_id = tostring(game.GameId),
            user_id = tostring(l_LocalPlayer_0.UserId),
            video_asset_id = l_Video_0,
            instance_name = l_Name_0,
            event_type = v7
        });
    end;
end;
local function v17(v12)
    local l_game_0 = game;
    for _, v15 in ipairs(v12:split(".")) do
        l_game_0 = l_game_0:WaitForChild(v15, v2);
        if not l_game_0 then
            error("Could not find child " .. tostring(v15) .. " in " .. v12);
        end;
    end;
    local l_ClassName_0 = l_game_0.ClassName;
    if l_ClassName_0 ~= "VideoFrame" then
        error("Expected VideoFrame at " .. v12 .. ", got " .. l_ClassName_0);
    end;
    return l_game_0;
end;
local function v23(v18)
    local v19 = v17(v18);
    local v20 = false;
    local v21 = false;
    if not v19.Playing then
        v19.Played:Connect(function()
            if not v20 then
                v11(v19, "VideoStart");
                v20 = true;
            end;
        end);
    else
        v11(v19, "VideoStart");
        v20 = true;
    end;
    local function v22()
        if not v21 then
            v11(v19, "VideoEnd");
            v21 = true;
        end;
    end;
    v19.Ended:Connect(v22);
    v19.DidLoop:Connect(v22);
end;
return function()
    local v24 = tostring(game.PlaceId);
    for _, v26 in ipairs(l_GetFStringPremiumSponsoredExperienceInstances_0():split(",")) do
        local v27, v28 = unpack(v26:split(":"));
        if v27 == v24 then
            spawn(function()
                v23(v28);
            end);
        end;
    end;
end;


local l_Parent_0 = script:FindFirstAncestor("ProfileInsights").Parent;
local l_Array_0 = require(l_Parent_0.LuauPolyfill).Array;
local v2 = require(l_Parent_0.ApolloProfileInsights);
local l_useProfileInsightsByUserIds_0 = v2.Hooks.useProfileInsightsByUserIds;
local l_getMutualFriendsByUserIdFromData_0 = v2.Selectors.getMutualFriendsByUserIdFromData;
local v5 = require(l_Parent_0.UserProfiles);
local function _(v6, v7)
    return l_Array_0.map(l_Array_0.slice(v6, 1, v7 + 1), function(v8)
        return v8.id;
    end);
end;
local function _(v10, v11)
    if not v10 then
        return nil;
    else
        return (l_Array_0.map(v11, function(v12)
            return v5.Selectors.getCombinedNameFromId(v10, v12);
        end));
    end;
end;
return function(v14)
    local v15 = l_useProfileInsightsByUserIds_0({
        userIds = {
            v14.userId
        }
    });
    local v17 = l_Array_0.map(l_Array_0.slice(l_getMutualFriendsByUserIdFromData_0(v15.data, v14.userId), 1, v14.limit + 1), function(v16)
        return v16.id;
    end);
    local v18 = v5.Hooks.useUserProfilesFetch({
        userIds = v17,
        query = v5.Queries.userProfilesCombinedNameByUserIds
    });
    local v19 = v15.loading or v18.loading;
    local l_data_0 = v18.data;
    return if not l_data_0 then nil else l_Array_0.map(v17, function(v21)
        return v5.Selectors.getCombinedNameFromId(l_data_0, v21);
    end), v19;
end;


local v0 = require(script.Parent.Parent.Dev.JestConfigs);
return {
    displayName = "ProfileInsights",
    setupFilesAfterEnv = {
        v0.setupFiles.LogHandler,
        v0.setupFiles.UIBloxInitializer,
        v0.setupFiles.createPromiseRejectionHandler()
    }
};


local v0 = require(script.Parent.Enums);
return {
    {
        component = v0.Components.UserProfileHeader
    },
    {
        component = v0.Components.SocialLinks
    },
    {
        component = v0.Components.About
    },
    {
        component = v0.Components.CurrentlyWearing
    },
    {
        component = v0.Components.ViewFullProfile
    },
    {
        component = v0.Components.Actions
    }
};


return {
    Components = {
        UserProfileHeader = "UserProfileHeader",
        SocialLinks = "SocialLinks",
        About = "About",
        CurrentlyWearing = "CurrentlyWearing",
        ViewFullProfile = "ViewFullProfile",
        Actions = "Actions"
    }
};


local l_script_FirstAncestor_0 = script:FindFirstAncestor("ProfilePlatform");
local l_Parent_0 = l_script_FirstAncestor_0.Parent;
local v2 = require(l_Parent_0.LuaSocialLibrariesDeps);
local l_useNavigationProps_0 = require(l_Parent_0.RobloxAppNavigation).useNavigationProps;
local l_getDeepValue_0 = v2.SocialLibraries.config({}).Dictionary.getDeepValue;
local v5 = require(l_Parent_0.React);
local v6 = require(l_Parent_0.RoactUtils);
local v7 = require(l_script_FirstAncestor_0.Common.Constants);
local l_useSelector_0 = v6.Hooks.RoactRodux.useSelector;
local l_useDispatch_0 = v6.Hooks.RoactRodux.useDispatch;
local l_useEffectOnMount_0 = v6.Hooks.useEffectOnMount;
local v11 = require(script.Parent.parseComponentsFromJson);
local v12 = require(l_script_FirstAncestor_0.Common.DefaultComponents);
local v13 = require(l_script_FirstAncestor_0.Networking.getProfilePlatform);
return function(_)
    local v17 = tostring(l_useNavigationProps_0(function(v15, _)
        return {
            profileUserId = v15
        };
    end).profileUserId);
    local v18 = l_useDispatch_0();
    local v20 = l_useSelector_0(function(v19)
        return l_getDeepValue_0(v19, v7.RODUX_KEY .. ".Users." .. v17) or {};
    end);
    l_useEffectOnMount_0(function()
        v18(v13.API({
            profileId = v17,
            profileType = "User",
            components = v12
        })):andThen(function(_)
        end):catch(function(_)
        end);
    end);
    return v5.createElement("Frame", {
        Size = UDim2.new(1, 0, 1, 0),
        BackgroundTransparency = 1
    }, {
        (v5.useMemo(function()
            return v11(v20.components, v20.componentOrdering);
        end, {
            v20
        }))
    });
end;


local v0 = require(script:FindFirstAncestor("ProfilePlatform").Parent.React);
return function(_, v2)
    local v3 = v2 or {};
    local v4 = {
        Layout = v0.createElement("UIListLayout", {
            SortOrder = Enum.SortOrder.LayoutOrder,
            HorizontalAlignment = Enum.HorizontalAlignment.Center,
            FillDirection = Enum.FillDirection.Vertical,
            Padding = UDim.new(0, 4)
        })
    };
    for v5, v6 in ipairs(v3) do
        local v7 = 33 * (v5 + 1);
        v4[v6] = v0.createElement("TextLabel", {
            Size = UDim2.new(1, 0, 0, 100),
            BackgroundColor3 = Color3.fromRGB(v7, v7, 2 * v7),
            Text = v6,
            LayoutOrder = v5
        });
    end;
    return v4;
end;


local l_script_FirstAncestor_0 = script:FindFirstAncestor("ProfilePlatform");
local v1 = require(l_script_FirstAncestor_0.Networking.myRoduxNetworking);
local v2 = require(l_script_FirstAncestor_0.Parent.Http);
local _ = require(l_script_FirstAncestor_0.Common.Enums);
return v1.POST({
    Name = "GetProfile"
}, function(v4, v5)
    return v4(v2.Url.APIS_URL .. "profile-platform-api"):path("v1"):path("profiles"):path("get"):body({
        profileType = v5.profileType,
        profileId = v5.profileId,
        components = v5.components,
        includeComponentOrdering = true
    });
end);


local l_script_FirstAncestor_0 = script:FindFirstAncestor("ProfilePlatform");
local l_Parent_0 = l_script_FirstAncestor_0.Parent;
local v2 = require(l_Parent_0.LuaSocialLibrariesDeps);
local l_httpRequest_0 = v2.httpRequest;
local l_RODUX_KEY_0 = require(l_script_FirstAncestor_0.Common.Constants).RODUX_KEY;
local v5 = require(l_Parent_0.Lumberyak).Logger.new(nil, l_RODUX_KEY_0):new(l_RODUX_KEY_0 .. " Networking");
return (v2.RoduxNetworking.config({
    keyPath = l_RODUX_KEY_0 .. ".NetworkStatus",
    networkImpl = l_httpRequest_0.config({
        requestFunction = function(v6, v7, v8)
            v5:info("Fetching: {}", string.format("[ requestMethod = %q, url = %q ]", v7, v6));
            return l_httpRequest_0.requestFunctions.RequestInternal(v6, v7, v8);
        end,
        postRequestFunction = function(v9, v10)
            v5:debug("Returned: {}", string.format("[ requestMethod = %q, url = %q, statusCode = %s, body = %s ]", v10.requestMethod, v10.url, v9.StatusCode, v9.Body));
        end,
        maxRetryCount = game:DefineFastInt("ProfilePlatformHttpRetryCount", 3)
    })
}));


local l_script_FirstAncestor_0 = script:FindFirstAncestor("ProfilePlatform");
local v1 = require(l_script_FirstAncestor_0.Parent.Rodux);
local v2 = require(l_script_FirstAncestor_0.Networking.myRoduxNetworking);
local v3 = require(l_script_FirstAncestor_0.Rodux.Users);
local v4 = require(l_script_FirstAncestor_0.Rodux.Groups);
return function()
    return v1.combineReducers({
        NetworkStatus = v2.installReducer(),
        Users = v3,
        Groups = v4
    });
end;


return {
    ["jest.config"] = script["jest.config"],
    RoduxKey = require(script.Common.Constants).RODUX_KEY,
    installReducer = require(script.Rodux.installReducer),
    ProfilePlatformEntrypoint = require(script.Components.ProfilePlatformEntrypoint)
};


local v0 = require(script.Parent.Parent.Dev.JestConfigs);
return {
    displayName = "ProfileInsights",
    testMatch = {
        "**/*.test"
    },
    setupFilesAfterEnv = {
        v0.setupFiles.LogHandler,
        v0.setupFiles.UIBloxInitializer,
        v0.setupFiles.createPromiseRejectionHandler()
    }
};


return {
    EventStream = {
        setRBXEventStream = require(script.Parent.setupSetRbxEventStream)((game:GetService("EventIngestService")))
    },
    Diag = require(script:FindFirstAncestor("ProfileQRCode").Parent.Analytics).Analytics.new(game:GetService("RbxAnalyticsService")).Diag
};


return require(script:FindFirstAncestor("ProfileQRCode").Parent.Enumerate)(script.Name, {
    FriendRequestBannerAccepted = "friendRequestBannerAccepted",
    FriendRequestBannerDismissed = "friendRequestBannerDismissed",
    QRCodeScannerOpened = "qrCodeScannerOpened"
});


local v0 = require(script.Parent.EventNames);
return {
    [v0.QRPageLoad] = {
        name = game:DefineFastString("ProfileQRPageLoad", "ProfileQRPageLoad")
    },
    [v0.QRCodeScannerOpened] = {
        name = game:DefineFastString("ProfileQRCodeScannerOpened", "ProfileQRCodeScannerOpened")
    },
    [v0.QRCodeScannerTooltipShown] = {
        name = game:DefineFastString("ProfileQRCodeScannerTooltipShown", "ProfileQRCodeScannerTooltipShown")
    },
    [v0.QRPageLoadFailed] = {
        name = game:DefineFastString("ProfileQRPageLoadFailed", "ProfileQRPageLoadFailed")
    },
    [v0.QRPageFriendRequestBannerShown] = {
        name = game:DefineFastString("ProfileQRPageFriendRequestBannerShown", "ProfileQRPageFriendRequestBannerShown")
    },
    [v0.QRPageFriendRequestBannerAccepted] = {
        name = game:DefineFastString("ProfileQRPageFriendRequestBannerAccepted", "ProfileQRPageFriendRequestBannerAccepted")
    },
    [v0.QRPageFriendRequestBannerDismissed] = {
        name = game:DefineFastString("ProfileQRPageFriendRequestBannerDismissed", "ProfileQRPageFriendRequestBannerDismissed")
    }
};


return require(script:FindFirstAncestor("ProfileQRCode").Parent.Enumerate)(script.Name, {
    QRPageLoad = "QRPageLoad",
    QRPageLoadFailed = "QRPageLoadFailed",
    QRPageFriendRequestBannerShown = "QRPageFriendRequestBannerShown",
    QRPageFriendRequestBannerAccepted = "QRPageFriendRequestBannerAccepted",
    QRPageFriendRequestBannerDismissed = "QRPageFriendRequestBannerDismissed",
    QRCodeScannerOpened = "QRCodeScannerOpened",
    QRCodeScannerTooltipShown = "QRCodeScannerTooltipShown"
});


local l_Parent_0 = script:FindFirstAncestor("ProfileQRCode").Parent;
local v1 = require(l_Parent_0.Dash);
local v2 = require(l_Parent_0.SocialLuaAnalytics);
local v3 = require(script.Parent.Parent.Analytics.BtnValues);
local v4 = require(script.Parent.EventNames);
local l_Enums_0 = v2.Analytics.Enums;
local l_Contexts_0 = l_Enums_0.Contexts;
local l_EventTypes_0 = l_Enums_0.EventTypes;
return {
    [v4.QRPageLoad] = {
        context = l_Contexts_0.ProfileQRCode,
        eventType = l_EventTypes_0.PageLoad,
        formatRulesForAdditionalInfo = {
            shareLinkId = v1.identity
        }
    },
    [v4.QRCodeScannerOpened] = {
        context = l_Contexts_0.ProfileQRCode,
        eventType = l_EventTypes_0.ButtonClick,
        additionalInfo = {
            btn = v3.QRCodeScannerOpened
        }
    },
    [v4.QRCodeScannerTooltipShown] = {
        context = l_Contexts_0.ProfileQRCode,
        eventType = l_EventTypes_0.ProfileQRCodeTooltipShown
    },
    [v4.QRPageLoadFailed] = {
        context = l_Contexts_0.ProfileQRCode,
        eventType = l_EventTypes_0.PageLoadFailed,
        formatRulesForAdditionalInfo = {
            errorReason = v1.identity
        }
    },
    [v4.QRPageFriendRequestBannerShown] = {
        context = l_Contexts_0.ProfileQRCode,
        eventType = l_EventTypes_0.ProfileQRCodeNotificationBannerShown,
        formatRulesForAdditionalInfo = {
            qrCodeBannerQueueSize = v1.identity
        }
    },
    [v4.QRPageFriendRequestBannerAccepted] = {
        context = l_Contexts_0.ProfileQRCode,
        eventType = l_EventTypes_0.ButtonClick,
        additionalInfo = {
            btn = v3.FriendRequestBannerAccepted
        },
        formatRulesForAdditionalInfo = {
            qrCodeBannerQueueSize = v1.identity
        }
    },
    [v4.QRPageFriendRequestBannerDismissed] = {
        context = l_Contexts_0.ProfileQRCode,
        eventType = l_EventTypes_0.ButtonClick,
        additionalInfo = {
            btn = v3.FriendRequestBannerDismissed
        },
        formatRulesForAdditionalInfo = {
            qrCodeBannerQueueSize = v1.identity
        }
    }
};


local l_Parent_0 = script:FindFirstAncestor("ProfileQRCode").Parent;
return require(l_Parent_0.React).createContext({
    fireEvent = require(l_Parent_0.Dash).noop
});


return {
    Context = require(script.ProfileQRCodeAnalytics),
    EventNames = require(script.EventNames),
    setupFireEvent = require(script.setupFireEvent),
    useAnalytics = require(script.useAnalytics)
};


local v0 = require(script:FindFirstAncestor("ProfileQRCode").Parent.SocialLuaAnalytics);
local v1 = require(script.Parent.DiagActionList);
local l_fireEventStream_0 = v0.Analytics.FireEvent.fireEventStream;
local l_fireDiagCounter_0 = v0.Analytics.FireEvent.fireDiagCounter;
local v4 = require(script.Parent.EventStreamActionList);
return function(v5)
    local v6 = l_fireEventStream_0({
        eventStreamImpl = v5.analytics.EventStream,
        eventList = v4,
        infoForAllEvents = v5.infoForAllEvents
    });
    local v7 = l_fireDiagCounter_0({
        diagImpl = v5.analytics.Diag,
        eventList = v1
    });
    return function(v8, v9)
        if v1[v8] then
            v7(v8);
        end;
        return v6(v8, v9);
    end;
end;


local l_getPlatformTarget_0 = require(script:FindFirstAncestor("ProfileQRCode").Parent.Analytics).getPlatformTarget;
return function(v1)
    return function(_, v3, v4, v5)
        v1:setRBXEventStream(l_getPlatformTarget_0(), v3, v4, v5);
    end;
end;


local v0 = require(script:FindFirstAncestor("ProfileQRCode").Parent.React);
local v1 = require(script.Parent.ProfileQRCodeAnalytics);
return function()
    return v0.useContext(v1);
end;


return {
    FriendshipNotifications = "FriendshipNotifications",
    FriendshipRequested = "FriendshipRequested"
};


return {
    AcceptFriend = "Feature.Profile.Action.AcceptFriends",
    Description = "Feature.Profile.Description.QrCodeScanning",
    FailedToLoad = "Feature.Profile.Message.QRLoadFailed",
    FriendAdded = "Feature.Profile.Message.FriendAdded",
    NotificationRequest = "Feature.Profile.Message.QRNofificationRequest",
    Title = "Feature.Profile.Heading.ProfileQRCode",
    TooltipText = "Feature.Profile.Tooltip.QrScanner",
    TooltipTitle = "Feature.Profile.Title.QrScanner"
};


local l_script_FirstAncestor_0 = script:FindFirstAncestor("ProfileQRCode");
local l_Parent_0 = l_script_FirstAncestor_0.Parent;
local v2 = require(l_script_FirstAncestor_0.Analytics.AnalyticsService);
local v3 = require(l_script_FirstAncestor_0.Analytics);
local v4 = require(l_Parent_0.React);
local l_useLocalUserId_0 = require(l_Parent_0.RobloxAppHooks).useLocalUserId;
local v6 = require(l_script_FirstAncestor_0.Components.ProfileQRCodePage.ProfileQRCodePage);
return function(v7)
    return v4.createElement(v3.Context.Provider, {
        value = {
            fireEvent = v3.setupFireEvent({
                analytics = if not v7.analyticsService then v2 else v7.analyticsService,
                infoForAllEvents = {
                    uid = l_useLocalUserId_0(),
                    source = v7.source
                }
            })
        }
    }, {
        Window = v4.createElement(v6, {
            appStorageService = v7.appStorageService,
            robloxEventReceiver = v7.robloxEventReceiver,
            onClose = v7.onClose,
            openQrCodeScanner = v7.openQrCodeScanner
        })
    });
end;


local l_script_FirstAncestor_0 = script:FindFirstAncestor("ProfileQRCode");
local l_Parent_0 = l_script_FirstAncestor_0.Parent;
local v2 = require(script.Parent.ProfileQRCodeEntryPoint);
local v3 = require(l_Parent_0.Dash);
local v4 = require(l_Parent_0.React);
local v5 = require(l_Parent_0.RoactRodux);
local v6 = require(l_script_FirstAncestor_0.Common.Constants);
local v7 = require(l_script_FirstAncestor_0.TestHelpers.createMockAppStorageService);
local v8 = require(l_script_FirstAncestor_0.TestHelpers.createMockRobloxEventReceiver);
local v9 = require(l_script_FirstAncestor_0.TestHelpers.mockState);
local v10 = require(l_script_FirstAncestor_0.TestHelpers.mockStore);
local v11 = v7();
return {
    default = function(v12)
        return v4.createElement(v5.StoreProvider, {
            store = v10(v9({
                LocalUserId = "156"
            }))
        }, {
            ProfileQRCodeEntryPoint = v4.createElement(v2, {
                appStorageService = v12.appStorageService or v11,
                layoutOrder = 1,
                analyticsService = if not not v12 and v12.analyticsService then v12.analyticsService else nil,
                onClose = if not not v12 and v12.onClose then v12.onClose else v3.noop,
                openQrCodeScanner = if not not v12 and v12.openQrCodeScanner then v12.openQrCodeScanner else v3.noop,
                robloxEventReceiver = v8().mockEventReceiver
            })
        });
    end,
    loading = function(v13)
        return v4.createElement(v5.StoreProvider, {
            store = v10(v9({
                LocalUserId = "156",
                [v6.RODUX_KEY] = {
                    Users = {},
                    NetworkStatus = {}
                }
            }))
        }, {
            ProfileQRCodeEntryPoint = v4.createElement(v2, {
                appStorageService = v13.appStorageService or v11,
                layoutOrder = 1,
                analyticsService = if not not v13 and v13.analyticsService then v13.analyticsService else nil,
                onClose = if not not v13 and v13.onClose then v13.onClose else v3.noop,
                openQrCodeScanner = if not not v13 and v13.openQrCodeScanner then v13.openQrCodeScanner else v3.noop,
                robloxEventReceiver = v8().mockEventReceiver
            })
        });
    end
};


local l_script_FirstAncestor_0 = script:FindFirstAncestor("ProfileQRCode");
local l_Parent_0 = l_script_FirstAncestor_0.Parent;
local v2 = require(l_Parent_0.React);
local v3 = require(l_Parent_0.UIBlox);
local v4 = require(l_Parent_0.Localization);
local l_StyledTextLabel_0 = v3.App.Text.StyledTextLabel;
local v6 = require(l_script_FirstAncestor_0.Components.ProfileQRCodeTopElements);
local v7 = require(l_script_FirstAncestor_0.Components.QRCodeView);
local v8 = require(l_script_FirstAncestor_0.Common.TextKeys);
local l_useIsWideMode_0 = require(l_Parent_0.SocialCommon).Hooks.useIsWideMode;
local l_useLocalization_0 = v4.Hooks.useLocalization;
local l_useStyle_0 = v3.Core.Style.useStyle;
local v12 = Color3.new(1, 1, 1);
return function(v13)
    local v14 = l_useLocalization_0({
        description = v8.Description
    });
    local v15, v16 = v2.useState(false);
    local v17 = l_useIsWideMode_0();
    local v18 = l_useStyle_0();
    return v2.createElement("Frame", {
        Size = UDim2.fromScale(1, 1),
        BackgroundTransparency = 1,
        BorderSizePixel = 0
    }, {
        TopElements = v2.createElement(v6, {
            appStorageService = v13.appStorageService,
            onClose = v13.onClose,
            openQrCodeScanner = v13.openQrCodeScanner,
            robloxEventReceiver = v13.robloxEventReceiver
        }),
        GradientBackground = v2.createElement("Frame", {
            BackgroundColor3 = v12,
            BackgroundTransparency = not v17 and 1 or 0.7,
            Position = UDim2.fromScale(0, 0),
            Size = if not v17 then UDim2.fromScale(1, 1) else UDim2.fromScale(0.6, 1),
            BorderSizePixel = 0,
            [v2.Change.AbsoluteSize] = v2.useCallback(function(v19)
                if v19.AbsoluteSize.Y >= 450 then
                    v16(true);
                    return ;
                else
                    v16(false);
                    return ;
                end;
            end)
        }, {
            Layout = v2.createElement("UIListLayout", {
                FillDirection = Enum.FillDirection.Vertical,
                HorizontalAlignment = Enum.HorizontalAlignment.Center,
                VerticalAlignment = Enum.VerticalAlignment.Bottom
            }),
            Content = v2.createElement("Frame", {
                BackgroundTransparency = 1,
                Size = if not v17 then UDim2.new(1, 0, 0.5, 0) else UDim2.new(1, 0, 1, -56),
                BorderSizePixel = 0
            }, {
                Layout = v2.createElement("UIListLayout", {
                    FillDirection = Enum.FillDirection.Vertical,
                    HorizontalAlignment = Enum.HorizontalAlignment.Center,
                    VerticalAlignment = Enum.VerticalAlignment.Center,
                    SortOrder = Enum.SortOrder.LayoutOrder
                }),
                Padding = v2.createElement("UIPadding", {
                    PaddingTop = UDim.new(0, 24),
                    PaddingRight = UDim.new(0, 24),
                    PaddingBottom = UDim.new(0, 24),
                    PaddingLeft = UDim.new(0, 24)
                }),
                QRCodeView = v2.createElement(v7, {
                    layoutOrder = 1,
                    isSmallScreen = v15
                }),
                Spacer1 = v2.createElement("Frame", {
                    BorderSizePixel = 0,
                    BackgroundTransparency = 1,
                    Size = UDim2.fromOffset(0, not v15 and 24 or 12),
                    LayoutOrder = 2
                }),
                Description = v2.createElement(l_StyledTextLabel_0, {
                    layoutOrder = 3,
                    text = v14.description,
                    fontStyle = v18.Font.CaptionBody,
                    lineHeight = 1,
                    colorStyle = v18.Theme.TextDefault,
                    size = UDim2.new(1, 0, 0, 0),
                    automaticSize = Enum.AutomaticSize.Y,
                    textXAlignment = Enum.TextXAlignment.Center,
                    textYAlignment = Enum.TextYAlignment.Center,
                    fluidSizing = false,
                    richText = false
                }),
                UISizeConstraint = v2.createElement("UISizeConstraint", {
                    MinSize = Vector2.new(0, 420)
                })
            }),
            Gradient = v2.createElement("UIGradient", {
                Rotation = 90,
                Color = ColorSequence.new({
                    ColorSequenceKeypoint.new(0, v18.Theme.BackgroundContrast.Color),
                    ColorSequenceKeypoint.new(1, v18.Theme.BackgroundContrast.Color)
                }),
                Transparency = NumberSequence.new({
                    NumberSequenceKeypoint.new(0, 0.4),
                    NumberSequenceKeypoint.new(1, 0)
                })
            })
        })
    });
end;


local l_script_FirstAncestor_0 = script:FindFirstAncestor("ProfileQRCode");
local l_Parent_0 = l_script_FirstAncestor_0.Parent;
local v2 = require(script.Parent.ProfileQRCodePage);
local v3 = require(l_Parent_0.Dash);
local v4 = require(l_Parent_0.React);
local v5 = require(l_Parent_0.RoactRodux);
local v6 = require(l_script_FirstAncestor_0.Common.Constants);
local v7 = require(l_script_FirstAncestor_0.TestHelpers.createMockAppStorageService);
local v8 = require(l_script_FirstAncestor_0.TestHelpers.createMockRobloxEventReceiver);
local v9 = require(l_script_FirstAncestor_0.TestHelpers.mockState);
local v10 = require(l_script_FirstAncestor_0.TestHelpers.mockStore);
local v11 = v7();
return {
    default = function(v12)
        return v4.createElement(v5.StoreProvider, {
            store = v10(v9({
                LocalUserId = "156",
                FormFactor = nil
            }))
        }, {
            AvatarBackground = v4.createElement("Frame", {
                Size = UDim2.new(0, 500, 0, 700),
                BackgroundColor3 = Color3.new(1, 0, 1),
                ZIndex = -2
            }, {
                AvatarImage = v4.createElement("Frame", {
                    Size = UDim2.new(0, 500, 0, 350),
                    BackgroundColor3 = Color3.new(0, 1, 1),
                    ZIndex = -1
                }),
                ProfileQRCodePage = v4.createElement(v2, {
                    appStorageService = if not v12.appStorageService then v11 else v12.appStorageService,
                    profileQRCodeFriendRequestAlertsEnabled = if not v12.profileQRCodeFriendRequestAlertsEnabled then nil else v12.profileQRCodeFriendRequestAlertsEnabled,
                    onClose = if not not v12 and v12.onClose then v12.onClose else v3.noop,
                    openQrCodeScanner = if not not v12 and v12.openQrCodeScanner then v12.openQrCodeScanner else v3.noop,
                    robloxEventReceiver = if not v12.robloxEventReceiver then v8().mockEventReceiver else v12.robloxEventReceiver
                })
            })
        });
    end,
    longScreen = function(v13)
        return v4.createElement(v5.StoreProvider, {
            store = v10(v9({
                LocalUserId = "156",
                FormFactor = nil
            }))
        }, {
            AvatarBackground = v4.createElement("Frame", {
                Size = UDim2.new(0, 500, 0, 900),
                BackgroundColor3 = Color3.new(1, 0, 1)
            }, {
                AvatarImage = v4.createElement("Frame", {
                    Size = UDim2.new(0, 500, 0, 450),
                    BackgroundColor3 = Color3.new(0, 1, 1)
                }),
                ProfileQRCodePage = v4.createElement(v2, {
                    profileQRCodeFriendRequestAlertsEnabled = true,
                    onClose = if not not v13 and v13.onClose then v13.onClose else v3.noop,
                    openQrCodeScanner = if not not v13 and v13.openQrCodeScanner then v13.openQrCodeScanner else v3.noop,
                    robloxEventReceiver = v8().mockEventReceiver
                })
            })
        });
    end,
    loading = function(v14)
        return v4.createElement(v5.StoreProvider, {
            store = v10(v9({
                LocalUserId = "156",
                FormFactor = nil,
                [v6.RODUX_KEY] = {
                    Users = {},
                    NetworkStatus = {}
                }
            }))
        }, {
            AvatarBackground = v4.createElement("Frame", {
                Size = UDim2.new(0, 500, 0, 900),
                BackgroundColor3 = Color3.new(1, 0, 1)
            }, {
                ProfileQRCodePage = v4.createElement(v2, {
                    profileQRCodeFriendRequestAlertsEnabled = true,
                    onClose = if not not v14 and v14.onClose then v14.onClose else v3.noop,
                    openQrCodeScanner = if not not v14 and v14.openQrCodeScanner then v14.openQrCodeScanner else v3.noop,
                    robloxEventReceiver = v8().mockEventReceiver
                })
            })
        });
    end
};


local l_script_FirstAncestor_0 = script:FindFirstAncestor("ProfileQRCode");
local l_Parent_0 = l_script_FirstAncestor_0.Parent;
local v2 = require(script.Parent.ProfileQRCodePage);
local v3 = require(l_Parent_0.React);
local v4 = require(l_Parent_0.RoactRodux);
local v5 = require(l_script_FirstAncestor_0.TestHelpers.mockStore);
local v6 = require(l_script_FirstAncestor_0.TestHelpers.mockState);
local v7 = require(l_Parent_0.Dash);
local v8 = require(l_script_FirstAncestor_0.Common.Constants);
local v9 = require(l_script_FirstAncestor_0.TestHelpers.createMockRobloxEventReceiver);
local v10 = require(l_Parent_0.Dev.FormFactor);
return {
    default = function(v11)
        return v3.createElement(v4.StoreProvider, {
            store = v5(v6({
                LocalUserId = "156",
                FormFactor = v10.Enums.FormFactor.WIDE
            }))
        }, {
            AvatarBackground = v3.createElement("Frame", {
                Size = UDim2.new(0, 1200, 0, 800),
                BackgroundColor3 = Color3.new(1, 0, 1)
            }, {
                ProfileQRCodePage = v3.createElement(v2, {
                    profileQRCodeFriendRequestAlertsEnabled = if not v11.profileQRCodeFriendRequestAlertsEnabled then nil else v11.profileQRCodeFriendRequestAlertsEnabled,
                    onClose = if not not v11 and v11.onClose then v11.onClose else v7.noop,
                    openQrCodeScanner = if not not v11 and v11.openQrCodeScanner then v11.openQrCodeScanner else v7.noop,
                    robloxEventReceiver = if not v11.robloxEventReceiver then v9().mockEventReceiver else v11.robloxEventReceiver
                })
            })
        });
    end,
    loading = function(v12)
        return v3.createElement(v4.StoreProvider, {
            store = v5(v6({
                LocalUserId = "156",
                FormFactor = v10.Enums.FormFactor.WIDE,
                [v8.RODUX_KEY] = {
                    Users = {},
                    NetworkStatus = {}
                }
            }))
        }, {
            AvatarBackground = v3.createElement("Frame", {
                Size = UDim2.new(0, 1200, 0, 800),
                BackgroundColor3 = Color3.new(1, 0, 1)
            }, {
                ProfileQRCodePage = v3.createElement(v2, {
                    profileQRCodeFriendRequestAlertsEnabled = true,
                    onClose = if not not v12 and v12.onClose then v12.onClose else v7.noop,
                    openQrCodeScanner = if not not v12 and v12.openQrCodeScanner then v12.openQrCodeScanner else v7.noop,
                    robloxEventReceiver = v9().mockEventReceiver
                })
            })
        });
    end
};


local l_script_FirstAncestor_0 = script:FindFirstAncestor("ProfileQRCode");
local l_Parent_0 = l_script_FirstAncestor_0.Parent;
local l_AppStorageService_0 = game:GetService("AppStorageService");
local l_CoreGui_0 = game:GetService("CoreGui");
local l_UserInputService_0 = game:GetService("UserInputService");
local v5 = require(l_Parent_0.Localization);
local v6 = require(l_Parent_0.React);
local v7 = require(l_Parent_0.RoactUtils);
local v8 = require(l_Parent_0.SocialCommon);
local v9 = require(l_Parent_0.UIBlox);
local v10 = require(l_Parent_0.UniversalAppPolicy);
local l_HeaderBar_0 = v9.App.Bar.HeaderBar;
local l_IconButton_0 = v9.App.Button.IconButton;
local l_IconSize_0 = v9.App.ImageSet.Enum.IconSize;
local l_Images_0 = v9.App.ImageSet.Images;
local l_TooltipOrientation_0 = v9.App.Dialog.Enum.TooltipOrientation;
local l_withTooltip_0 = v9.App.Dialog.TooltipV2.withTooltip;
local l_makeBackButton_0 = require(l_Parent_0.AppHeaderBar).makeBackButton;
local l_ExternalEventConnection_0 = v7.ExternalEventConnection;
local l_InputUtilities_0 = v8.Utils.InputUtilities;
local v20 = require(l_script_FirstAncestor_0.Analytics.EventNames);
local v21 = require(l_script_FirstAncestor_0.Common.TextKeys);
local v22 = require(l_script_FirstAncestor_0.Analytics.useAnalytics);
local l_useAppPolicy_0 = v10.useAppPolicy;
local l_useLocalization_0 = v5.Hooks.useLocalization;
local l_GetFFlagUIBloxUseNewHeaderBar_0 = require(l_Parent_0.SharedFlags).UIBlox.GetFFlagUIBloxUseNewHeaderBar;
local function _(v26)
    v26 = v26 or l_AppStorageService_0;
    assert(v26 ~= nil, "AppStorageService is not nil");
    local l_status_0, l_result_0 = pcall(function()
        return v26:GetItem("QrCodeScannerTooltipSeen");
    end);
    if not l_status_0 or l_result_0 == nil then
        return false;
    else
        return l_result_0 == "true";
    end;
end;
local function _(v30, v31)
    v30 = v30 or l_AppStorageService_0;
    assert(v30 ~= nil, "AppStorageService is not nil");
    pcall(function()
        v30:SetItem("QrCodeScannerTooltipSeen", (tostring(v31)));
        v30:Flush();
    end);
end;
return function(v33)
    local v34 = v22();
    local v35 = l_useLocalization_0({
        title = v21.Title,
        tooltipBodyText = v21.TooltipText,
        tooltipHeaderText = v21.TooltipTitle
    });
    local v37 = l_useAppPolicy_0(function(v36)
        return v36.getFriendCodeQrCodeScannerEnabled();
    end);
    local v38, v39 = v6.useState(false);
    v6.useEffect(function()
        local v40 = v33.appStorageService or l_AppStorageService_0;
        assert(v40 ~= nil, "AppStorageService is not nil");
        local l_status_1, l_result_1 = pcall(function()
            return v40:GetItem("QrCodeScannerTooltipSeen");
        end);
        local v43;
        if not l_status_1 or l_result_1 == nil then
            v43 = false;
            --[[ close >= 1 ]]
        else
            v43 = l_result_1 == "true";
            --[[ close >= 1 ]]
        end;
        v39(not v43);
        if not v43 then
            v34.fireEvent(v20.QRCodeScannerTooltipShown);
        end;
    end, {});
    local v49 = v6.useCallback(function(v44)
        if not (not l_InputUtilities_0.isActivationInput(v44) or not v38) then
            v39(false);
            local v45 = v33.appStorageService or l_AppStorageService_0;
            assert(v45 ~= nil, "AppStorageService is not nil");
            local l_pcall_0 = pcall;
            local v47 = true;
            do
                local l_v45_0 = v45;
                l_pcall_0(function()
                    l_v45_0:SetItem("QrCodeScannerTooltipSeen", (tostring(v47)));
                    l_v45_0:Flush();
                end);
            end;
        end;
    end, {
        v38
    });
    local v50 = v6.useCallback(function()
        v34.fireEvent(v20.QRCodeScannerOpened);
        v33.openQrCodeScanner();
    end, {
        v33.openQrCodeScanner
    });
    local l_tooltipBodyText_0 = v35.tooltipBodyText;
    local l_tooltipHeaderText_0 = v35.tooltipHeaderText;
    return v6.createElement("Frame", {
        BackgroundTransparency = 1,
        Size = UDim2.new(1, 0, 0, 56),
        LayoutOrder = v33.layoutOrder,
        ZIndex = 2
    }, {
        headerBar = v6.createElement(l_HeaderBar_0, {
            isSecondary = true,
            title = v35.title,
            backgroundTransparency = 1,
            barHeight = 56,
            renderLeft = if not l_GetFFlagUIBloxUseNewHeaderBar_0() then l_HeaderBar_0.renderLeft.backButton(v33.onClose) else l_makeBackButton_0(v33.onClose),
            renderRight = if not v37 then nil else v6.useCallback(function()
                return l_withTooltip_0({
                    bodyText = l_tooltipBodyText_0,
                    headerText = l_tooltipHeaderText_0
                }, {
                    active = v38,
                    DisplayOrder = 10,
                    guiTarget = l_CoreGui_0,
                    preferredOrientation = l_TooltipOrientation_0.Bottom
                }, function(v53)
                    return v6.createElement(l_IconButton_0, {
                        icon = l_Images_0["icons/actions/scan"],
                        iconSize = l_IconSize_0.Medium,
                        onActivated = v50,
                        size = UDim2.fromOffset(0, 0),
                        onAbsolutePositionChanged = v53,
                        [v6.Change.AbsoluteSize] = v53
                    }, {
                        InputBeganConnection = v6.createElement(l_ExternalEventConnection_0, {
                            event = l_UserInputService_0.InputBegan,
                            callback = v49
                        })
                    });
                end);
            end, {
                v50,
                v37,
                v38,
                l_tooltipBodyText_0,
                l_tooltipHeaderText_0
            })
        })
    });
end;


local l_script_FirstAncestor_0 = script:FindFirstAncestor("ProfileQRCode");
local l_Parent_0 = l_script_FirstAncestor_0.Parent;
local v2 = require(script.Parent.ProfileQRCodeTopBar);
local v3 = require(l_Parent_0.React);
local v4 = require(l_Parent_0.Dash);
local v5 = require(l_Parent_0.RoactRodux);
local v6 = require(l_script_FirstAncestor_0.TestHelpers.createMockAppStorageService);
local v7 = require(l_script_FirstAncestor_0.TestHelpers.mockStore);
local v8 = require(l_script_FirstAncestor_0.TestHelpers.mockState);
local v9 = v6();
return {
    default = function(v10)
        return v3.createElement(v5.StoreProvider, {
            store = v7(v8())
        }, {
            ProfileQRCodeTopBar = v3.createElement(v2, {
                appStorageService = if not v10.appStorageService then v9 else v10.appStorageService,
                layoutOrder = 1,
                onClose = if not v10.onClose then v4.noop else v10.onClose,
                openQrCodeScanner = if not v10.openQrCodeScanner then v4.noop else v10.openQrCodeScanner
            })
        });
    end
};


local l_IXPService_0 = game:GetService("IXPService");
local l_script_FirstAncestor_0 = script:FindFirstAncestor("ProfileQRCode");
local l_Parent_0 = l_script_FirstAncestor_0.Parent;
local v3 = require(l_Parent_0.Cryo);
local v4 = require(l_Parent_0.React);
local v5 = require(l_Parent_0.RoactAppExperiment);
local v6 = require(l_Parent_0.Localization);
local v7 = require(l_Parent_0.UIBlox);
local l_Toast_0 = v7.App.Dialog.Toast;
local v9 = require(l_script_FirstAncestor_0.Analytics.EventNames);
local v10 = require(l_script_FirstAncestor_0.Components.ProfileQRCodeTopBar);
local v11 = require(l_script_FirstAncestor_0.Components.QRCodeFriendRequestNotification);
local v12 = require(l_script_FirstAncestor_0.Common.TextKeys);
local v13 = require(l_script_FirstAncestor_0.Networking.useAcceptFriendUrl);
local v14 = require(l_script_FirstAncestor_0.Analytics.useAnalytics);
local v15 = require(l_script_FirstAncestor_0.Networking.useGetUsersInfoUrl);
local l_useLocalization_0 = v6.Hooks.useLocalization;
local l_useLocalUserId_0 = require(l_Parent_0.RobloxAppHooks).useLocalUserId;
local v18 = require(l_Parent_0.NetworkingFriends);
local l_Images_0 = v7.App.ImageSet.Images;
local v20 = require(l_script_FirstAncestor_0.Common.SignalREvents);
local v21 = require(l_script_FirstAncestor_0.Flags.getFStringProfileQRCodeFriendRequestAlertsExperimentKey);
local v22 = require(l_script_FirstAncestor_0.Flags.getFStringProfileQRCodeFriendRequestAlertsLayer);
local v23 = l_Images_0["icons/actions/friends/friendAdd"];
return (v5.connectUserLayer({
    v22()
}, function(v24, _)
    return {
        profileQRCodeFriendRequestAlertsEnabled = (v24[v22()] or {})[v21()]
    };
end, false)(function(v26)
    local v27 = l_useLocalization_0({
        description = v12.Description,
        friendAdded = v12.FriendAdded
    });
    local v28 = v14();
    local l_profileQRCodeFriendRequestAlertsEnabled_0 = v26.profileQRCodeFriendRequestAlertsEnabled;
    local l_robloxEventReceiver_0 = v26.robloxEventReceiver;
    local v31, v32 = v4.useState(false);
    local v35, v36 = v4.useReducer(function(v33, v34)
        if v34.type == "addItemToQueue" then
            l_IXPService_0:LogUserLayerExposure(v22());
            return v3.List.join(v33, {
                v34.newUserId
            });
        elseif v34.type == "removeItemFromQueue" then
            return v3.List.removeIndex(v33, 1);
        else
            return v33;
        end;
    end, {});
    local v37 = l_useLocalUserId_0();
    local v38 = v15();
    local v39 = v13();
    local function v43(v40)
        if v40.Type == v20.FriendshipRequested and v40.EventArgs.SourceType == v18.Enums.FriendshipOriginSourceType.QrCode.rawValue() then
            local v41 = tostring(v40.EventArgs.UserId1);
            if v41 == v37 then
                v41 = tostring(v40.EventArgs.UserId2);
            end;
            do
                local l_v41_0 = v41;
                v38(l_v41_0):andThen(function()
                    v36({
                        type = "addItemToQueue",
                        newUserId = l_v41_0
                    });
                end);
            end;
        end;
    end;
    v4.useEffect(function()
        l_robloxEventReceiver_0:observeEvent(v20.FriendshipNotifications, function(v44)
            v43(v44);
        end);
    end, {
        l_robloxEventReceiver_0
    });
    return v4.createElement("Frame", {
        Size = UDim2.new(1, 0, 0, 56),
        BackgroundTransparency = 1,
        ZIndex = 3,
        LayoutOrder = 1
    }, {
        TopBarWrapper = v4.createElement("Frame", {
            Size = UDim2.new(1, 0, 1, 0),
            BackgroundTransparency = 1,
            ZIndex = 3
        }, {
            Layout = v4.createElement("UIListLayout", {
                FillDirection = Enum.FillDirection.Vertical,
                HorizontalAlignment = Enum.HorizontalAlignment.Center,
                VerticalAlignment = Enum.VerticalAlignment.Top,
                SortOrder = Enum.SortOrder.LayoutOrder
            }),
            TopBar = v4.createElement(v10, {
                appStorageService = v26.appStorageService,
                layoutOrder = 1,
                onClose = v26.onClose,
                openQrCodeScanner = v26.openQrCodeScanner
            })
        }),
        FriendAcceptToastFrame = if not not l_profileQRCodeFriendRequestAlertsEnabled_0 and v31 then v4.createElement("Frame", {
            BackgroundTransparency = 1,
            Size = UDim2.new(1, 0, 1, 0),
            ZIndex = 100
        }, {
            FriendAcceptToast = v4.createElement(l_Toast_0, {
                toastContent = {
                    toastTitle = v27.friendAdded,
                    iconImage = v23,
                    onDismissed = function()
                        v32(false);
                    end
                },
                duration = 3,
                show = true
            })
        }) else nil,
        FriendsInviteFrame = if not (not not l_profileQRCodeFriendRequestAlertsEnabled_0 and #v35 > 0) or v31 then nil else v4.createElement("Frame", {
            BackgroundTransparency = 1,
            Position = UDim2.new(0, 0, 0, 24),
            Size = UDim2.new(1, 0, 1, 0),
            ZIndex = 100
        }, {
            Padding = v4.createElement("UIPadding", {
                PaddingRight = UDim.new(0, 28),
                PaddingLeft = UDim.new(0, 28)
            }),
            Layout = v4.createElement("UIListLayout", {
                FillDirection = Enum.FillDirection.Vertical,
                HorizontalAlignment = Enum.HorizontalAlignment.Center,
                VerticalAlignment = Enum.VerticalAlignment.Top,
                SortOrder = Enum.SortOrder.LayoutOrder
            }),
            FriendsInvite = v4.createElement(v11, {
                notificationQueueSize = #v35,
                onAccept = function(v45)
                    v39(v37, v45):andThen(function()
                        v36({
                            type = "removeItemFromQueue",
                            newUserId = "0"
                        });
                        v32(true);
                    end);
                    v28.fireEvent(v9.QRPageFriendRequestBannerAccepted, {
                        qrCodeBannerQueueSize = #v35
                    });
                end,
                onClose = function()
                    v36({
                        type = "removeItemFromQueue",
                        newUserId = "0"
                    });
                    v28.fireEvent(v9.QRPageFriendRequestBannerDismissed, {
                        qrCodeBannerQueueSize = #v35
                    });
                end,
                userId = tostring(v35[1])
            })
        })
    });
end));


local l_script_FirstAncestor_0 = script:FindFirstAncestor("ProfileQRCode");
local l_Parent_0 = l_script_FirstAncestor_0.Parent;
local v2 = require(script.Parent);
local v3 = require(l_Parent_0.Dash);
local v4 = require(l_Parent_0.React);
local v5 = require(l_Parent_0.RoactRodux);
local v6 = require(l_script_FirstAncestor_0.TestHelpers.createMockAppStorageService);
local v7 = require(l_script_FirstAncestor_0.TestHelpers.createMockRobloxEventReceiver);
local v8 = require(l_script_FirstAncestor_0.TestHelpers.mockState);
local v9 = require(l_script_FirstAncestor_0.TestHelpers.mockStore);
local v10 = v6();
return {
    default = function(v11)
        return v4.createElement(v5.StoreProvider, {
            store = v9(v8({
                LocalUserId = "156"
            }))
        }, {
            Wrapper = v4.createElement("Frame", {
                BackgroundTransparency = 0,
                Size = UDim2.fromOffset(400, 500),
                BorderSizePixel = 0
            }, {
                ProfileQRCodeTopElements = v4.createElement(v2, {
                    appStorageService = if not v11.appStorageService then v10 else v11.appStorageService,
                    onClose = if not v11.onClose then v3.noop else v11.onClose,
                    openQrCodeScanner = if not v11.openQrCodeScanner then v3.noop else v11.openQrCodeScanner,
                    profileQRCodeFriendRequestAlertsEnabled = if not v11.profileQRCodeFriendRequestAlertsEnabled then nil else v11.profileQRCodeFriendRequestAlertsEnabled,
                    robloxEventReceiver = if not v11.robloxEventReceiver then v7().mockEventReceiver else v11.robloxEventReceiver
                })
            })
        });
    end
};


local l_script_FirstAncestor_0 = script:FindFirstAncestor("ProfileQRCode");
local l_Parent_0 = l_script_FirstAncestor_0.Parent;
local v2 = require(l_Parent_0.React);
local v3 = require(l_Parent_0.UIBlox);
local l_StyledTextLabel_0 = v3.App.Text.StyledTextLabel;
local l_useStyle_0 = v3.Core.Style.useStyle;
local v6 = require(l_script_FirstAncestor_0.Common.TextKeys);
local l_useLocalization_0 = require(l_Parent_0.Localization).Hooks.useLocalization;
local l_Button_0 = v3.App.Button.Button;
local l_ButtonType_0 = v3.App.Button.Enum.ButtonType;
local l_IconButton_0 = v3.App.Button.IconButton;
local l_IconSize_0 = v3.App.ImageSet.Enum.IconSize;
local l_Images_0 = v3.App.ImageSet.Images;
local l_ImageSetLabel_0 = v3.Core.ImageSet.ImageSetLabel;
local l_StandardButtonSize_0 = v3.App.Button.Enum.StandardButtonSize;
local v15 = require(l_script_FirstAncestor_0.Utils.useLocalUserInfo);
local v16 = require(l_script_FirstAncestor_0.Analytics.useAnalytics);
local v17 = require(l_script_FirstAncestor_0.Analytics.EventNames);
local v18 = l_Images_0["icons/menu/scanqr"];
local v19 = l_Images_0["icons/navigation/close"];
return function(v20)
    local v21 = l_useLocalization_0({
        notificationRequest = v6.NotificationRequest,
        acceptFriend = v6.AcceptFriend
    });
    local v22 = l_useStyle_0();
    local v23 = v15(v20.userId);
    local v24 = v16();
    local v25, v26 = v2.useState(false);
    v2.useEffect(function()
        v24.fireEvent(v17.QRPageFriendRequestBannerShown, {
            qrCodeBannerQueueSize = v20.notificationQueueSize
        });
    end, {
        v20.userId
    });
    return v2.createElement("Frame", {
        ZIndex = 2,
        AutomaticSize = Enum.AutomaticSize.Y,
        Size = UDim2.fromScale(1, 0),
        BorderSizePixel = 0,
        BackgroundColor3 = v22.Theme.BackgroundUIDefault.Color,
        BackgroundTransparency = v22.Theme.BackgroundUIDefault.Transparency
    }, {
        UIPadding = v2.createElement("UIPadding", {
            PaddingBottom = UDim.new(0, 12),
            PaddingLeft = UDim.new(0, 12),
            PaddingRight = UDim.new(0, 12),
            PaddingTop = UDim.new(0, 12)
        }),
        UICorner = v2.createElement("UICorner", {
            CornerRadius = UDim.new(0, 8)
        }),
        UIStroke = v2.createElement("UIStroke", {
            Color = v22.Theme.Divider.Color,
            Transparency = v22.Theme.Divider.Transparency,
            Thickness = 1
        }),
        Layout = v2.createElement("UIListLayout", {
            SortOrder = Enum.SortOrder.LayoutOrder,
            HorizontalAlignment = Enum.HorizontalAlignment.Center
        }),
        UISizeConstraint = v2.createElement("UISizeConstraint", {
            MaxSize = Vector2.new(640, math.huge)
        }),
        UpperFrame = v2.createElement("Frame", {
            LayoutOrder = 1,
            BackgroundTransparency = 1,
            AutomaticSize = Enum.AutomaticSize.Y,
            Size = UDim2.fromScale(1, 0),
            BorderSizePixel = 0
        }, {
            UIPadding = v2.createElement("UIPadding", {
                PaddingBottom = UDim.new(0, 12)
            }),
            Layout = v2.createElement("UIListLayout", {
                FillDirection = Enum.FillDirection.Horizontal,
                SortOrder = Enum.SortOrder.LayoutOrder
            }),
            QRCodeImageFrame = v2.createElement("Frame", {
                LayoutOrder = 1,
                BackgroundTransparency = 1,
                Size = UDim2.new(0, 40, 0, 40),
                BorderSizePixel = 0
            }, {
                QRImage = v2.createElement(l_ImageSetLabel_0, {
                    Image = v18,
                    BackgroundTransparency = 1,
                    ImageTransparency = 0,
                    ImageColor3 = v22.Theme.TextEmphasis.Color,
                    Size = UDim2.new(0, 40, 0, 40)
                })
            }),
            TextFrame = v2.createElement("Frame", {
                LayoutOrder = 2,
                BackgroundTransparency = 1,
                Size = UDim2.new(1, -72, 0, 0),
                BorderSizePixel = 0
            }, {
                UIPadding = v2.createElement("UIPadding", {
                    PaddingLeft = UDim.new(0, 16),
                    PaddingRight = UDim.new(0, 16)
                }),
                Layout = v2.createElement("UIListLayout", {
                    SortOrder = Enum.SortOrder.LayoutOrder
                }),
                Username = v2.createElement(l_StyledTextLabel_0, {
                    layoutOrder = 1,
                    text = v23.displayName,
                    Font = v22.Font.Header2.Font,
                    fontStyle = v22.Font.Header2,
                    colorStyle = v22.Theme.TextDefault,
                    size = UDim2.new(1, 0, 0, 20),
                    AutomaticSize = Enum.AutomaticSize.Y,
                    TextColor3 = v22.Theme.TextEmphasis.Color,
                    TextTransparency = v22.Theme.TextEmphasis.Transparency,
                    TextXAlignment = Enum.TextXAlignment.Left,
                    TextYAlignment = Enum.TextYAlignment.Center,
                    TextWrapped = true
                }),
                Spacer1 = v2.createElement("Frame", {
                    BorderSizePixel = 0,
                    BackgroundTransparency = 1,
                    Size = UDim2.new(1, 0, 0, 5),
                    LayoutOrder = 2
                }),
                Description = v2.createElement(l_StyledTextLabel_0, {
                    layoutOrder = 3,
                    text = v21.notificationRequest,
                    Font = v22.Font.CaptionBody.Font,
                    fontStyle = v22.Font.Body,
                    colorStyle = v22.Theme.TextDefault,
                    size = UDim2.new(1, 0, 0, 28),
                    AutomaticSize = Enum.AutomaticSize.Y,
                    TextColor3 = v22.Theme.TextEmphasis.Color,
                    TextTransparency = v22.Theme.TextEmphasis.Transparency,
                    TextXAlignment = Enum.TextXAlignment.Left,
                    TextYAlignment = Enum.TextYAlignment.Center,
                    TextWrapped = true,
                    lineHeight = 1
                })
            }),
            CloseButtonFrame = v2.createElement("Frame", {
                LayoutOrder = 3,
                BackgroundTransparency = 1,
                Size = UDim2.new(0, 32, 0, 32),
                BorderSizePixel = 0
            }, {
                CloseButton = v2.createElement(l_IconButton_0, {
                    icon = v19,
                    iconSize = l_IconSize_0.Medium,
                    onActivated = v20.onClose,
                    anchorPoint = Vector2.new(0.13, 0.13)
                })
            })
        }),
        AcceptButton = v2.createElement(l_Button_0, {
            buttonType = l_ButtonType_0.PrimarySystem,
            layoutOrder = 2,
            standardSize = l_StandardButtonSize_0.Small,
            text = v21.acceptFriend,
            fontStyle = v22.Font.CaptionBody,
            isDisabled = v25,
            onActivated = function()
                v26(true);
                v20.onAccept(v20.userId);
            end
        })
    });
end;


local l_script_FirstAncestor_0 = script:FindFirstAncestor("ProfileQRCode");
local l_Parent_0 = l_script_FirstAncestor_0.Parent;
local v2 = require(script.Parent);
local v3 = require(l_Parent_0.React);
local v4 = require(l_Parent_0.RoactRodux);
local v5 = require(l_script_FirstAncestor_0.TestHelpers.mockStore);
local v6 = require(l_script_FirstAncestor_0.TestHelpers.mockState);
local v7 = require(l_Parent_0.Dash);
local v8 = require(l_script_FirstAncestor_0.TestHelpers.DefaultTestUserId);
return {
    default = function(v9)
        return v3.createElement(v4.StoreProvider, {
            store = v5(v6())
        }, {
            QRCodeFriendRequestNotificationElement = v3.createElement(v2, {
                notificationQueueSize = 1,
                onClose = if not v9.onClose then v7.noop else v9.onClose,
                onAccept = if not v9.onAccept then v7.noop else v9.onAccept,
                userId = if not v9.userId then v8 else v9.userId
            })
        });
    end
};


local l_script_FirstAncestor_0 = script:FindFirstAncestor("ProfileQRCode");
local l_Parent_0 = l_script_FirstAncestor_0.Parent;
local v2 = require(l_Parent_0.React);
local v3 = require(l_Parent_0.UIBlox);
local l_StyledTextLabel_0 = v3.App.Text.StyledTextLabel;
local l_useStyle_0 = v3.Core.Style.useStyle;
local v6 = require(l_script_FirstAncestor_0.Common.TextKeys);
local l_useLocalization_0 = require(l_Parent_0.Localization).Hooks.useLocalization;
local l_Button_0 = v3.App.Button.Button;
local l_ButtonType_0 = v3.App.Button.Enum.ButtonType;
local l_Images_0 = v3.App.ImageSet.Images;
local l_StandardButtonSize_0 = v3.App.Button.Enum.StandardButtonSize;
local l_ImageSetLabel_0 = v3.Core.ImageSet.ImageSetLabel;
local l_IconSize_0 = v3.App.Constant.IconSize;
local v14 = Color3.new(1, 1, 1);
local v15 = l_Images_0["icons/common/refresh"];
local v16 = l_Images_0["icons/graphic/error_xlarge"];
return function(v17)
    local v18 = l_useStyle_0();
    return v2.createElement("Frame", {
        BackgroundTransparency = 1,
        Size = UDim2.new(1, 0, 1, 0)
    }, {
        Layout = v2.createElement("UIListLayout", {
            FillDirection = Enum.FillDirection.Vertical,
            HorizontalAlignment = Enum.HorizontalAlignment.Center,
            VerticalAlignment = Enum.VerticalAlignment.Center,
            SortOrder = Enum.SortOrder.LayoutOrder
        }),
        Wrapper = v2.createElement("Frame", {
            BackgroundTransparency = 1,
            AutomaticSize = Enum.AutomaticSize.Y,
            Size = UDim2.new(1, 0, 0, 0)
        }, {
            Layout = v2.createElement("UIListLayout", {
                FillDirection = Enum.FillDirection.Vertical,
                HorizontalAlignment = Enum.HorizontalAlignment.Center,
                VerticalAlignment = Enum.VerticalAlignment.Center,
                SortOrder = Enum.SortOrder.LayoutOrder
            }),
            ImageWrapper = v2.createElement("Frame", {
                BorderSizePixel = 0,
                BackgroundColor3 = v14,
                BackgroundTransparency = 1,
                Size = UDim2.fromOffset(l_IconSize_0.XLarge, l_IconSize_0.XLarge),
                LayoutOrder = 1
            }, {
                FailedImage = v2.createElement(l_ImageSetLabel_0, {
                    AnchorPoint = Vector2.new(0.5, 0.5),
                    BackgroundTransparency = 1,
                    Image = v16,
                    Size = UDim2.fromOffset(l_IconSize_0.XLarge, l_IconSize_0.XLarge),
                    Position = UDim2.fromScale(0.5, 0.5),
                    LayoutOrder = 1
                })
            }),
            Spacer1 = v2.createElement("Frame", {
                BorderSizePixel = 0,
                BackgroundTransparency = 1,
                Size = UDim2.new(0, 0, 0, 12),
                LayoutOrder = 2
            }),
            FailedMessage = v2.createElement(l_StyledTextLabel_0, {
                layoutOrder = 3,
                size = UDim2.new(1, 0, 0, 0),
                text = l_useLocalization_0({
                    failedToLoadMessage = v6.FailedToLoad
                }).failedToLoadMessage,
                fontStyle = v18.Font.CaptionBody,
                colorStyle = v18.Theme.TextMuted,
                automaticSize = Enum.AutomaticSize.Y,
                textTruncate = Enum.TextTruncate.AtEnd,
                textXAlignment = Enum.TextXAlignment.Center,
                textYAlignment = Enum.TextYAlignment.Center,
                fluidSizing = false,
                richText = false
            }),
            Spacer2 = v2.createElement("Frame", {
                BorderSizePixel = 0,
                BackgroundTransparency = 1,
                Size = UDim2.new(0, 0, 0, 20),
                LayoutOrder = 4
            }),
            RetryButton = v2.createElement(l_Button_0, {
                buttonType = l_ButtonType_0.Secondary,
                standardSize = l_StandardButtonSize_0.Regular,
                layoutOrder = 5,
                icon = v15,
                onActivated = v17.onActivated
            })
        })
    });
end;


local l_Parent_0 = script:FindFirstAncestor("ProfileQRCode").Parent;
local v1 = require(l_Parent_0.React);
local l_ShimmerPanel_0 = require(l_Parent_0.UIBlox).App.Loading.ShimmerPanel;
return function()
    return v1.createElement(l_ShimmerPanel_0, {
        Size = UDim2.new(1, 0, 1, 0),
        cornerRadius = UDim.new(0.05, 0)
    });
end;


local l_script_FirstAncestor_0 = script:FindFirstAncestor("ProfileQRCode");
local l_Parent_0 = l_script_FirstAncestor_0.Parent;
local v2 = require(l_Parent_0.QRCodeDisplay);
local v3 = require(l_Parent_0.React);
local v4 = require(l_Parent_0.UIBlox);
local v5 = require(l_Parent_0.UserLib);
local l_Images_0 = v4.App.ImageSet.Images;
local l_ImageSetLabel_0 = v4.Core.ImageSet.ImageSetLabel;
local l_LightTheme_0 = v4.App.Style.Themes.LightTheme;
local l_StyledTextLabel_0 = v4.App.Text.StyledTextLabel;
local l_useLocalUserId_0 = require(l_Parent_0.RobloxAppHooks).useLocalUserId;
local v11 = require(l_script_FirstAncestor_0.Utils.useLocalUserInfo);
local l_useStyle_0 = v4.Core.Style.useStyle;
local l_DisplayQRCode_0 = v2.DisplayQRCode;
local l_getStandardSizeAvatarHeadShotRbxthumb_0 = v5.Utils.getStandardSizeAvatarHeadShotRbxthumb;
local v15 = game:DefineFastFlag("FriendQrCodeRotatedDesign", false) and v2.FFlagQrCodeDrawToEditableImage;
local v16 = l_Images_0["component_assets/dropshadow_56_8"];
local v17 = not v15 and 80 or 70;
return function(v18)
    local v19 = l_useLocalUserId_0();
    local v20 = v11(v19);
    local v21 = l_useStyle_0();
    local v22 = nil;
    if v19 then
        v22 = l_getStandardSizeAvatarHeadShotRbxthumb_0(v19);
    end;
    return v3.createElement("Frame", {
        BorderSizePixel = 0,
        BackgroundTransparency = l_LightTheme_0.BackgroundUIDefault.Transparency,
        BackgroundColor3 = l_LightTheme_0.BackgroundUIDefault.Color,
        Size = UDim2.new(1, 0, 1, 0)
    }, {
        Layout = v3.createElement("UIListLayout", {
            FillDirection = Enum.FillDirection.Vertical,
            HorizontalAlignment = Enum.HorizontalAlignment.Center,
            VerticalAlignment = Enum.VerticalAlignment.Center,
            SortOrder = Enum.SortOrder.LayoutOrder
        }),
        Padding = v3.createElement("UIPadding", {
            PaddingTop = UDim.new(0, if not v18.isSmallScreen then v18.padding else v18.padding / 2),
            PaddingRight = UDim.new(0, v18.padding),
            PaddingBottom = UDim.new(0, if not v18.isSmallScreen then v18.padding else v18.padding / 2),
            PaddingLeft = UDim.new(0, v18.padding)
        }),
        QRCodeWrapper = v3.createElement("Frame", {
            BackgroundTransparency = 1,
            Size = UDim2.new(0, v18.qrCodeLength, 0, v18.qrCodeLength),
            LayoutOrder = 1
        }, {
            QRCode = v3.createElement(l_DisplayQRCode_0, {
                toEncode = v18.url,
                ecLevel = v2.ECLevels.EC_LEVEL_4,
                sideLength = v18.qrCodeLength,
                pixelColor = l_LightTheme_0.UIEmphasis.Color,
                qrCodeRotation = if not v15 then nil else 15
            }),
            PlayerAvatar = if not v15 then v3.createElement(l_ImageSetLabel_0, {
                BorderSizePixel = 1,
                BackgroundTransparency = l_LightTheme_0.BackgroundUIDefault.Transparency,
                BackgroundColor3 = l_LightTheme_0.BackgroundUIDefault.Color,
                Position = UDim2.new(0.5, -30, 0.5, -30),
                Image = v22,
                Size = UDim2.new(0, 60, 0, 60),
                ZIndex = 3
            }, {
                UICorner = v3.createElement("UICorner", {
                    CornerRadius = UDim.new(1, 0)
                }),
                UIStroke = v3.createElement("UIStroke", {
                    Thickness = 2,
                    Color = l_LightTheme_0.BackgroundUIDefault.Color
                })
            }) else v3.createElement("Frame", {
                AnchorPoint = Vector2.new(0.5, 0.5),
                BackgroundColor3 = l_LightTheme_0.BackgroundUIDefault.Color,
                BackgroundTransparency = l_LightTheme_0.BackgroundUIDefault.Transparency,
                Position = UDim2.fromScale(0.5, 0.5),
                Rotation = 15,
                Size = UDim2.fromOffset(44, 44),
                ZIndex = 3
            }, {
                Canvas = v3.createElement("CanvasGroup", {
                    BackgroundColor3 = l_LightTheme_0.BackgroundUIDefault.Color,
                    BackgroundTransparency = l_LightTheme_0.BackgroundUIDefault.Transparency,
                    BorderSizePixel = 0,
                    ClipsDescendants = true,
                    Size = UDim2.fromScale(1, 1)
                }, {
                    Avatar = v3.createElement("ImageLabel", {
                        AnchorPoint = Vector2.new(0.5, 0.5),
                        BackgroundColor3 = l_LightTheme_0.BackgroundUIDefault.Color,
                        BackgroundTransparency = l_LightTheme_0.BackgroundUIDefault.Transparency,
                        BorderSizePixel = 0,
                        Image = v22,
                        Position = UDim2.fromScale(0.5, 0.5),
                        Rotation = -15,
                        Size = UDim2.fromOffset(60, 60),
                        ZIndex = 2
                    })
                }),
                UIStroke = v3.createElement("UIStroke", {
                    Color = l_LightTheme_0.BackgroundUIDefault.Color,
                    Thickness = 2
                })
            }),
            BigShadow = v3.createElement(l_ImageSetLabel_0, {
                AnchorPoint = Vector2.new(0.5, 0.5),
                Position = UDim2.new(0.5, 0, 0.5, 0),
                Size = UDim2.new(0, v17, 0, v17),
                BackgroundTransparency = 1,
                BorderSizePixel = 0,
                ZIndex = 2,
                Image = v16,
                ScaleType = Enum.ScaleType.Slice,
                SliceCenter = Rect.new(28, 28, 29, 29),
                ImageColor3 = v21.Theme.DropShadow.Color,
                ImageTransparency = v21.Theme.DropShadow.Transparency
            })
        }),
        Spacer1 = v3.createElement("Frame", {
            BorderSizePixel = 0,
            BackgroundTransparency = 1,
            Size = UDim2.new(0, 0, 0, 10),
            LayoutOrder = 2
        }),
        DisplayName = v3.createElement(l_StyledTextLabel_0, {
            layoutOrder = 3,
            text = v20.displayName,
            fontStyle = v21.Font.SubHeader1,
            lineHeight = 1,
            colorStyle = l_LightTheme_0.TextEmphasis,
            automaticSize = Enum.AutomaticSize.Y,
            textTruncate = Enum.TextTruncate.AtEnd,
            textXAlignment = Enum.TextXAlignment.Center,
            textYAlignment = Enum.TextYAlignment.Center,
            fluidSizing = false,
            richText = false,
            size = UDim2.new(1, 0, 0, 0)
        }),
        Username = v3.createElement(l_StyledTextLabel_0, {
            size = UDim2.new(1, 0, 0, 0),
            layoutOrder = 4,
            text = "@" .. v20.username,
            fontStyle = v21.Font.CaptionBody,
            lineHeight = 1,
            automaticSize = Enum.AutomaticSize.Y,
            colorStyle = l_LightTheme_0.TextEmphasis,
            textTruncate = Enum.TextTruncate.AtEnd,
            textXAlignment = Enum.TextXAlignment.Center,
            textYAlignment = Enum.TextYAlignment.Center,
            fluidSizing = false,
            richText = false
        }),
        UICorner = v3.createElement("UICorner", {
            CornerRadius = UDim.new(0.05, 0)
        })
    });
end;


local l_script_FirstAncestor_0 = script:FindFirstAncestor("ProfileQRCode");
local l_Parent_0 = l_script_FirstAncestor_0.Parent;
local v2 = require(l_Parent_0.React);
local v3 = require(l_script_FirstAncestor_0.Networking.useGetProfileShareUrl);
local v4 = require(l_script_FirstAncestor_0.Analytics.useAnalytics);
local v5 = require(l_script_FirstAncestor_0.Rodux.useShortUrl);
local v6 = require(script.Parent.useHasLoadedSuccessfully);
local v7 = require(l_script_FirstAncestor_0.Networking.useLoadingState);
local l_NetworkStatus_0 = require(l_script_FirstAncestor_0.Networking.configuredRoduxNetworking).Enum.NetworkStatus;
local v9 = require(script.Parent.QRCodeFailedView);
local v10 = require(script.Parent.QRCodeSucceededView);
local v11 = require(script.Parent.QRCodeLoadingView);
local l_useEffectOnce_0 = require(l_Parent_0.RoactUtils).Hooks.useEffectOnce;
local v13 = require(script.Parent.useHasFailedToLoad);
return function(v14)
    local v15 = v4();
    local v16 = v7();
    local v17 = v3();
    local v18 = v5();
    local v19 = v18 ~= nil;
    local v20 = v16 == l_NetworkStatus_0.Failed;
    l_useEffectOnce_0(v17, not v19);
    v6(v15, v19);
    v13(v15, v20);
    local v21 = nil;
    v21 = if not v19 then if v20 then v2.createElement(v9, {
        onActivated = v17,
        padding = 24
    }) else v2.createElement(v11) else v2.createElement(v10, {
        url = v18,
        qrCodeLength = 200,
        padding = 24,
        isSmallScreen = v14.isSmallScreen
    });
    local _ = 304;
    return v2.createElement("Frame", {
        Size = UDim2.new(0, 304, 0, not v14.isSmallScreen and 304 or 280),
        LayoutOrder = v14.layoutOrder,
        BackgroundTransparency = 1
    }, {
        View = v21
    });
end;