local v0 = require(script.Parent.Parent["Type.roblox"]);
local v1 = {};
local v3 = {
    __tostring = function(v2)
        return string.format("RoactHostEvent(%s)", v2.name);
    end
};
setmetatable(v1, {
    __index = function(_, v5)
        local v6 = {
            [v0] = v0.HostEvent,
            name = v5
        };
        setmetatable(v6, v3);
        v1[v5] = v6;
        return v6;
    end
});
return v1;


local _ = require(script.Parent.ReactElementType);
local _ = require(script.Parent["flowtypes.roblox"]);
local v2 = require(script.Parent.ReactSymbols);
local l_REACT_SUSPENSE_TYPE_0 = v2.REACT_SUSPENSE_TYPE;
local l_REACT_SUSPENSE_LIST_TYPE_0 = v2.REACT_SUSPENSE_LIST_TYPE;
local l_REACT_FORWARD_REF_TYPE_0 = v2.REACT_FORWARD_REF_TYPE;
local l_REACT_MEMO_TYPE_0 = v2.REACT_MEMO_TYPE;
local l_REACT_BLOCK_TYPE_0 = v2.REACT_BLOCK_TYPE;
local l_REACT_LAZY_TYPE_0 = v2.REACT_LAZY_TYPE;
local v9 = require(script.Parent["ConsolePatchingDev.roblox"]);
local l_disableLogs_0 = v9.disableLogs;
local l_reenableLogs_0 = v9.reenableLogs;
local l_ReactCurrentDispatcher_0 = require(script.Parent.ReactSharedInternals).ReactCurrentDispatcher;
local v13 = nil;
local v14 = nil;
local function _(v15)
    if type(v15) == "function" then
        return debug.info(v15, "n");
    elseif type(v15) == "table" then
        return (tostring(v15));
    else
        return nil;
    end;
end;
local function v21(v17, v18, v19)
    local v20 = nil;
    if not (not _G.__DEV__ or not v19) then
        v20 = if type(v19) == "function" then debug.info(v19, "n") else if type(v19) == "table" then tostring(v19) else nil;
    end;
    return v13(v17, v18, v20);
end;
local v22 = false;
local v23 = nil;
if _G.__DEV__ then
    v23 = setmetatable({}, {
        __mode = "k"
    });
end;
local function v45(v24, v25)
    if v24 and not v22 then
        if _G.__DEV__ then
            local v26 = v23[v24];
            if v26 ~= nil then
                return v26;
            end;
        end;
        local v27 = nil;
        v22 = true;
        local v28 = nil;
        if _G.__DEV__ then
            v28 = l_ReactCurrentDispatcher_0.current;
            l_ReactCurrentDispatcher_0.current = nil;
            l_disableLogs_0();
        end;
        local v29 = nil;
        local _, v34 = xpcall(function()
            if not v25 then
                local _, l_result_0 = pcall(function()
                    v29 = debug.traceback();
                    error({
                        stack = v29
                    });
                end);
                v27 = l_result_0;
                v24();
                return ;
            else
                return ;
            end;
        end, function(v32)
            return {
                message = v32,
                stack = v29
            };
        end);
        local v35 = nil;
        if not (not v34 or not v27) and type(v34.stack) == "string" then
            local v36 = string.split(v34.stack, "\n");
            local v37 = string.split(v27.stack, "\n");
            local v38 = #v36 - 1;
            local v39 = #v37 - 1;
            while (v38 >= 2 and v39 >= 0) and v36[v38] ~= v37[v39] do
                v39 = v39 - 1;
            end;
            while v38 >= 3 and v39 >= 1 do
                v38 = v38 - 1;
                v39 = v39 - 1;
                if v36[v38] ~= v37[v39] then
                    if not (v38 == 1) or v39 ~= 1 then
                        while true do
                            v38 = v38 - 1;
                            v39 = v39 - 1;
                            if not (v39 >= 0) or v36[v38] ~= v37[v39] then
                                local v40 = "\n" .. "    in " .. v36[v38];
                                if _G.__DEV__ then
                                    v23[v24] = v40;
                                end;
                                v35 = v40;
                            end;
                            if not (v38 >= 3 and v39 >= 1) then
                                goto label0;
                            end;
                        end;
                    else
                        break;
                    end;
                end;
            end;
        end;
        ::label0::;
        v22 = false;
        if _G.__DEV__ then
            l_ReactCurrentDispatcher_0.current = v28;
            l_reenableLogs_0();
        end;
        if v35 ~= nil then
            return v35;
        else
            local v41 = if type(v24) == "function" then debug.info(v24, "n") else if type(v24) == "table" then tostring(v24) else "";
            local v42 = "";
            if v41 ~= nil and v41 ~= "" then
                local v43 = nil;
                local _ = _G.__DEV__;
                v42 = v13(v41, nil, v43);
            end;
            if _G.__DEV__ then
                v23[v24] = v42;
            end;
            return v42;
        end;
    else
        return "";
    end;
end;
v13 = function(v46, v47, v48)
    local v49 = "";
    if not _G.__DEV__ or not v47 then
        if v48 then
            v49 = " (created by " .. v48 .. ")";
        end;
    else
        local l_fileName_0 = v47.fileName;
        local v51 = string.gsub(l_fileName_0, "^(.*)[\\/]", "");
        if string.match(v51, "^init%.") then
            local v52 = string.match(l_fileName_0, "^(.*)[\\/]");
            if v52 and #v52 ~= 0 then
                v51 = string.gsub(v52, "^(.*)[\\/]", "") .. "/" .. v51;
            end;
        end;
        v49 = " (at " .. v51 .. ":" .. v47.lineNumber .. ")";
    end;
    return "\n    in " .. (v46 or "Unknown") .. v49;
end;
local function v58(v53, v54, v55)
    local v56 = tostring(v53);
    local v57 = nil;
    if not (not _G.__DEV__ or not v55) then
        v57 = if type(v55) == "function" then debug.info(v55, "n") else if type(v55) == "table" then tostring(v55) else nil;
    end;
    return v13(v56, v54, v57);
end;
v14 = function(v59, v60, v61)
    if v59 then
        local v62 = if type(v59) == "function" then debug.info(v59, "n") else tostring(v59);
        local v63 = nil;
        if not (not _G.__DEV__ or not v61) then
            v63 = if type(v61) == "function" then debug.info(v61, "n") else if type(v61) == "table" then tostring(v61) else nil;
        end;
        return v13(v62, v60, v63);
    else
        return "";
    end;
end;
local function v64(v65, v66, v67)
    if _G.__DEV__ then
        if v65 == nil then
            return "";
        elseif type(v65) == "table" and type(v65.__ctor) == "function" then
            return v58(v65, v66, v67);
        elseif type(v65) == "function" then
            return v14(v65, v66, v67);
        elseif type(v65) == "string" then
            return v21(v65, v66, v67);
        elseif v65 == l_REACT_SUSPENSE_TYPE_0 then
            return v21("Suspense", v66, v67);
        elseif v65 == l_REACT_SUSPENSE_LIST_TYPE_0 then
            return v21("SuspenseList", v66, v67);
        else
            if type(v65) == "table" then
                local v68 = v65["$$typeof"];
                if v68 == l_REACT_FORWARD_REF_TYPE_0 then
                    return v14(v65.render, v66, v67);
                elseif v68 == l_REACT_MEMO_TYPE_0 then
                    return v64(v65.type, v66, v67);
                elseif v68 == l_REACT_BLOCK_TYPE_0 then
                    return v14(v65._render, v66, v67);
                elseif v68 == l_REACT_LAZY_TYPE_0 then
                    local l__payload_0 = v65._payload;
                    local l__init_0 = v65._init;
                    local l_status_1, l_result_1 = pcall(function()
                        v64(l__init_0(l__payload_0), v66, v67);
                    end);
                    if l_status_1 then
                        return l_result_1;
                    end;
                end;
            end;
            return "";
        end;
    else
        return "";
    end;
end;
return {
    describeComponentFrame = v13,
    describeBuiltInComponentFrame = v21,
    describeNativeComponentFrame = v45,
    describeClassComponentFrame = v58,
    describeFunctionComponentFrame = v14,
    describeUnknownElementTypeFrameInDEV = v64
};


local _ = require(script.Parent.Parent.LuauPolyfill);
local _ = require(script.Parent["flowtypes.roblox"]);
return {};


local v0 = require(script.Parent.invariant);
local v1 = require(script.Parent.invokeGuardedCallbackImpl);
local v2 = nil;
local v3 = false;
local v4 = nil;
local v5 = false;
local v6 = nil;
local v8 = {
    onError = function(v7)
        v3 = true;
        v4 = v7;
    end
};
local v9 = {
    invokeGuardedCallback = function(...)
        v3 = false;
        v4 = nil;
        v1(v8, ...);
    end
};
v9.invokeGuardedCallbackAndCatchFirstError = function(...)
    v9.invokeGuardedCallback(...);
    if v3 then
        local v10 = v2();
        if not v5 then
            v5 = true;
            v6 = v10;
        end;
    end;
end;
v9.rethrowCaughtError = function()
    if v5 then
        local l_v6_0 = v6;
        v5 = false;
        v6 = nil;
        error(l_v6_0);
    end;
end;
v9.hasCaughtError = function()
    return v3;
end;
v2 = function()
    if not v3 then
        v0(false, "clearCaughtError was called but no error was captured. This error " .. "is likely caused by a bug in React. Please file an issue.");
        return nil;
    else
        local l_v4_0 = v4;
        v3 = false;
        v4 = nil;
        return l_v4_0;
    end;
end;
v9.clearCaughtError = v2;
return v9;


return {
    enableFilterEmptyStringAttributesDOM = true,
    enableDebugTracing = false,
    enableSchedulingProfiler = _G.__PROFILE__ and _G.__EXPERIMENTAL__,
    debugRenderPhaseSideEffectsForStrictMode = _G.__DEV__,
    replayFailedUnitOfWorkWithInvokeGuardedCallback = _G.__DEV__,
    warnAboutDeprecatedLifecycles = true,
    enableProfilerTimer = _G.__PROFILE__,
    enableProfilerCommitHooks = false,
    enableSchedulerTracing = _G.__PROFILE__,
    enableSuspenseServerRenderer = _G.__EXPERIMENTAL__,
    enableSelectiveHydration = _G.__EXPERIMENTAL__,
    enableBlocksAPI = _G.__EXPERIMENTAL__,
    enableLazyElements = _G.__EXPERIMENTAL__,
    enableSchedulerDebugging = false,
    disableJavaScriptURLs = false,
    enableFundamentalAPI = false,
    enableScopeAPI = false,
    enableCreateEventHandleAPI = false,
    warnAboutUnmockedScheduler = false,
    enableSuspenseCallback = false,
    warnAboutDefaultPropsOnFunctionComponents = false,
    disableSchedulerTimeoutBasedOnReactExpirationTime = false,
    enableTrustedTypesIntegration = false,
    warnAboutSpreadingKeyToJSX = true,
    enableComponentStackLocations = true,
    enableNewReconciler = true,
    skipUnmountedBoundaries = true,
    disableInputAttributeSyncing = true,
    warnAboutStringRefs = false,
    disableLegacyContext = false,
    disableTextareaChildren = false,
    disableModulePatternComponents = false,
    warnUnstableRenderSubtreeIntoContainer = false,
    enableLegacyFBSupport = true,
    deferRenderPhaseUpdateToNextBatch = false,
    decoupleUpdatePriorityFromScheduler = true,
    enableDiscreteEventFlushingChange = false,
    enableEagerRootListeners = false,
    enableDoubleInvokingEffects = false
};


local v0 = require(script.Parent.Parent.invariant);
shim = function(...)
    v0(false, "The current renderer does not support hydration. " .. "This error is likely caused by a bug in React. " .. "Please file an issue.");
end;
return {
    supportsHydration = false,
    canHydrateInstance = shim,
    canHydrateTextInstance = shim,
    canHydrateSuspenseInstance = shim,
    isSuspenseInstancePending = shim,
    isSuspenseInstanceFallback = shim,
    registerSuspenseInstanceRetry = shim,
    getNextHydratableSibling = shim,
    getFirstHydratableChild = shim,
    hydrateInstance = shim,
    hydrateTextInstance = shim,
    hydrateSuspenseInstance = shim,
    getNextHydratableInstanceAfterSuspenseInstance = shim,
    commitHydratedContainer = shim,
    commitHydratedSuspenseInstance = shim,
    clearSuspenseBoundary = shim,
    clearSuspenseBoundaryFromContainer = shim,
    didNotMatchHydratedContainerTextInstance = shim,
    didNotMatchHydratedTextInstance = shim,
    didNotHydrateContainerInstance = shim,
    didNotHydrateInstance = shim,
    didNotFindHydratableContainerInstance = shim,
    didNotFindHydratableContainerTextInstance = shim,
    didNotFindHydratableContainerSuspenseInstance = shim,
    didNotFindHydratableInstance = shim,
    didNotFindHydratableTextInstance = shim,
    didNotFindHydratableSuspenseInstance = shim
};


local v0 = require(script.Parent.Parent.invariant);
local function v1(...)
    v0(false, "The current renderer does not support persistence. " .. "This error is likely caused by a bug in React. " .. "Please file an issue.");
end;
return {
    supportsPersistence = false,
    cloneInstance = v1,
    cloneFundamentalInstance = v1,
    createContainerChildSet = v1,
    appendChildToContainerChildSet = v1,
    finalizeContainerChildren = v1,
    replaceContainerChildren = v1,
    cloneHiddenInstance = v1,
    cloneHiddenTextInstance = v1
};


local v0 = require(script.Parent.Parent.invariant);
local function v1(...)
    v0(false, "The current renderer does not support test selectors. " .. "This error is likely caused by a bug in React. " .. "Please file an issue.");
end;
return {
    supportsTestSelectors = false,
    findFiberRoot = v1,
    getBoundingRect = v1,
    getTextContent = v1,
    isHiddenSubtree = v1,
    matchAccessibilityRole = v1,
    setFocusIfFocusable = v1,
    setupIntersectionObserver = v1
};


return {
    WithNoHydration = require(script.WithNoHydration),
    WithNoPersistence = require(script.WithNoPersistence),
    WithNoTestSelectors = require(script.WithNoTestSelectors)
};


local v0 = require(script.Parent.Parent.LuauPolyfill);
local l_Error_0 = v0.Error;
local l_inspect_0 = v0.util.inspect;
local v3 = require(script.Parent.getComponentName);
local v4 = {};
local function _(v5)
    local v6 = false;
    if v5.tag ~= nil then
        v6 = false;
        if v5.subtreeFlags ~= nil then
            v6 = false;
            if v5.lanes ~= nil then
                v6 = v5.childLanes ~= nil;
            end;
        end;
    end;
    return v6;
end;
v4.remove = function(v8)
    v8._reactInternals = nil;
end;
v4.get = function(v9)
    local l__reactInternals_0 = v9._reactInternals;
    local v11 = false;
    if l__reactInternals_0.tag ~= nil then
        v11 = false;
        if l__reactInternals_0.subtreeFlags ~= nil then
            v11 = false;
            if l__reactInternals_0.lanes ~= nil then
                v11 = l__reactInternals_0.childLanes ~= nil;
            end;
        end;
    end;
    if v11 then
        if l__reactInternals_0.alternate ~= nil then
            local l_alternate_0 = l__reactInternals_0.alternate;
            v11 = false;
            if l_alternate_0.tag ~= nil then
                v11 = false;
                if l_alternate_0.subtreeFlags ~= nil then
                    v11 = false;
                    if l_alternate_0.lanes ~= nil then
                        v11 = l_alternate_0.childLanes ~= nil;
                    end;
                end;
            end;
            if not v11 then
                error(l_Error_0.new("invalid alternate fiber (" .. (v3(v9) or "UNNAMED alternate") .. ") in " .. (v3(v9) or "UNNAMED Component") .. " during get from ReactInstanceMap " .. l_inspect_0(l__reactInternals_0.alternate)));
            end;
        end;
        return l__reactInternals_0;
    else
        error(l_Error_0.new("invalid fiber in " .. (v3(v9) or "UNNAMED Component") .. " during get from ReactInstanceMap " .. l_inspect_0(l__reactInternals_0)));
        return l__reactInternals_0;
    end;
end;
v4.has = function(v13)
    return v13._reactInternals ~= nil;
end;
v4.set = function(v14, v15)
    local l_v15_0 = v15;
    local v17 = nil;
    while l_v15_0 ~= nil do
        local l_l_v15_0_0 = l_v15_0;
        local v19 = false;
        if l_l_v15_0_0.tag ~= nil then
            v19 = false;
            if l_l_v15_0_0.subtreeFlags ~= nil then
                v19 = false;
                if l_l_v15_0_0.lanes ~= nil then
                    v19 = l_l_v15_0_0.childLanes ~= nil;
                end;
            end;
        end;
        if v19 then
            if l_v15_0.alternate ~= nil then
                l_l_v15_0_0 = l_v15_0.alternate;
                v19 = false;
                if l_l_v15_0_0.tag ~= nil then
                    v19 = false;
                    if l_l_v15_0_0.subtreeFlags ~= nil then
                        v19 = false;
                        if l_l_v15_0_0.lanes ~= nil then
                            v19 = l_l_v15_0_0.childLanes ~= nil;
                        end;
                    end;
                end;
                if not v19 then
                    v17 = "invalid alternate fiber (" .. (v3(v14) or "UNNAMED alternate") .. ") in " .. (v3(v14) or "UNNAMED Component") .. " being set in ReactInstanceMap " .. l_inspect_0(l_v15_0.alternate) .. "\n";
                    if v15 ~= l_v15_0 then
                        v17 = v17 .. " (from original fiber " .. (v3(v14) or "UNNAMED Component") .. ")";
                    end;
                    error(l_Error_0.new(v17));
                end;
            end;
        else
            v17 = "invalid fiber in " .. (v3(v14) or "UNNAMED Component") .. " being set in ReactInstanceMap " .. l_inspect_0(l_v15_0) .. "\n";
            if v15 ~= l_v15_0 then
                v17 = v17 .. " (from original fiber " .. (v3(v14) or "UNNAMED Component") .. ")";
            end;
            error(l_Error_0.new(v17));
        end;
        l_v15_0 = l_v15_0.return_;
    end;
    v14._reactInternals = v15;
end;
return v4;


local _ = require(script.Parent.Parent.Parent.LuauPolyfill);
local _ = require(script.Parent.Parent.ReactElementType);
local _ = require(script.Parent.Parent.ReactTypes);
return {
    current = nil
};


local v0 = {};
local v1 = nil;
v0.setExtraStackFrame = function(v2)
    if _G.__DEV__ then
        v1 = v2;
    end;
end;
if _G.__DEV__ then
    v0.getCurrentStack = nil;
    v0.getStackAddendum = function()
        local v3 = "";
        if v1 then
            v3 = v3 .. v1;
        end;
        local l_getCurrentStack_0 = v0.getCurrentStack;
        if l_getCurrentStack_0 then
            v3 = v3 .. (l_getCurrentStack_0() or "");
        end;
        return v3;
    end;
end;
return v0;


local l_console_0 = require(script.Parent.Parent.LuauPolyfill).console;
local function _(v1)
    return function()
        l_console_0.error(v1 .. " is only available in tests, not in production");
    end;
end;
return {
    ReactCurrentDispatcher = require(script.ReactCurrentDispatcher),
    ReactCurrentBatchConfig = require(script.ReactCurrentBatchConfig),
    ReactCurrentOwner = require(script.ReactCurrentOwner),
    IsSomeRendererActing = require(script.IsSomeRendererActing),
    ReactDebugCurrentFrame = if not _G.__DEV__ then {
        setExtraStackFrame = function(_)
        end
    } else require(script.ReactDebugCurrentFrame)
};


local v0 = {
    REACT_ELEMENT_TYPE = 60103,
    REACT_PORTAL_TYPE = 60106,
    REACT_FRAGMENT_TYPE = 60107,
    REACT_STRICT_MODE_TYPE = 60108,
    REACT_PROFILER_TYPE = 60114,
    REACT_PROVIDER_TYPE = 60109,
    REACT_CONTEXT_TYPE = 60110,
    REACT_FORWARD_REF_TYPE = 60112,
    REACT_SUSPENSE_TYPE = 60113,
    REACT_SUSPENSE_LIST_TYPE = 60120,
    REACT_MEMO_TYPE = 60115,
    REACT_LAZY_TYPE = 60116,
    REACT_BLOCK_TYPE = 60121,
    REACT_SERVER_BLOCK_TYPE = 60122,
    REACT_FUNDAMENTAL_TYPE = 60117,
    REACT_SCOPE_TYPE = 60119,
    REACT_OPAQUE_ID_TYPE = 60128,
    REACT_DEBUG_TRACING_MODE_TYPE = 60129,
    REACT_OFFSCREEN_TYPE = 60130,
    REACT_LEGACY_HIDDEN_TYPE = 60131,
    REACT_BINDING_TYPE = 60132
};
v0.getIteratorFn = function(v1)
    if typeof(v1) == "table" then
        if v1["$$typeof"] == v0.REACT_PORTAL_TYPE then
            return nil;
        else
            return function()
                local v2 = nil;
                local v3 = nil;
                return {
                    next = function()
                        local v4, v5 = next(v1, v2);
                        v2 = v4;
                        v3 = v5;
                        return {
                            done = v3 == nil,
                            key = v2,
                            value = v3
                        };
                    end
                };
            end;
        end;
    else
        return nil;
    end;
end;
return v0;


local _ = require(script.Parent.Parent.LuauPolyfill);
local _ = require(script.Parent["flowtypes.roblox"]);
return {
    DiscreteEvent = 0,
    UserBlockingEvent = 1,
    ContinuousEvent = 2
};


return {
    named = function(v0)
        assert(type(v0) == "string", "Symbols must be created using a string name");
        local v1 = newproxy(true);
        local v2 = string.format("Symbol(%s)", v0);
        getmetatable(v1).__tostring = function()
            return v2;
        end;
        return v1;
    end
};


local v0 = require(script.Parent["Symbol.roblox"]);
local v1 = newproxy(true);
local v2 = {};
local function _(v3)
    v2[v3] = v0.named("Roact" .. v3);
end;
v2.HostChangeEvent = v0.named("Roact" .. "HostChangeEvent");
v2.HostEvent = v0.named("Roact" .. "HostEvent");
v2.of = function(v5)
    if typeof(v5) ~= "table" then
        return nil;
    else
        return v5[v1];
    end;
end;
getmetatable(v1).__index = v2;
getmetatable(v1).__tostring = function()
    return "RoactType";
end;
return v1;


local v0 = require(script.Parent.console);
local v1 = {};
setmetatable(v1, {
    __index = function(_, _)
        if _G.__DEV__ then
            v0.warn("Attempted to access uninitialized state. Use setState to initialize state");
        end;
        return nil;
    end,
    __newindex = function(_, _)
        if _G.__DEV__ then
            v0.error("Attempted to directly mutate state. Use setState to assign new values to state.");
        end;
        return nil;
    end,
    __tostring = function(_)
        return "<uninitialized component state>";
    end,
    __metatable = "UninitializedState"
});
return v1;


local l_Error_0 = require(script.Parent.Parent.LuauPolyfill).Error;
local v1 = require(script.Parent.console);
local v2 = {};
local l_describeUnknownElementTypeFrameInDEV_0 = require(script.Parent.ReactComponentStackFrame).describeUnknownElementTypeFrameInDEV;
local v4 = require(script.Parent.ReactSharedInternals);
local l_describeError_0 = require(script.Parent["ErrorHandling.roblox"]).describeError;
local l_ReactDebugCurrentFrame_0 = v4.ReactDebugCurrentFrame;
local function _(v7)
    if _G.__DEV__ then
        if not v7 then
            l_ReactDebugCurrentFrame_0.setExtraStackFrame(nil);
        else
            local l__owner_0 = v7._owner;
            l_ReactDebugCurrentFrame_0.setExtraStackFrame((l_describeUnknownElementTypeFrameInDEV_0(v7.type, v7._source, if l__owner_0 ~= nil then l__owner_0.type else nil)));
            return ;
        end;
    end;
end;
return function(v10, v11, v12, v13, v14, v15)
    if not (not _G.__DEV__ and not _G.__DISABLE_ALL_WARNINGS_EXCEPT_PROP_VALIDATION__) then
        if not (not v10 or not v11) then
            v1.warn("You've defined both propTypes and validateProps on " .. (v14 or "a component"));
        end;
        if v11 then
            if typeof(v11) ~= "function" then
                v1.error(("validateProps must be a function, but it is a %s.\nCheck the definition of the component %q."):format(typeof(v11), v14 or ""));
            else
                local v16, v17 = v11(v12);
                if not v16 then
                    error((string.format("validateProps failed on a %s type in %s: %s", v13, v14 or "<UNKNOWN Component>", (tostring(v17 or "<Validator function did not supply a message>")))));
                end;
            end;
        end;
        if v10 then
            assert(typeof(v10) == "table", "propTypes needs to be a table");
            for v18, _ in v10, nil, nil do
                local _, v22 = xpcall(function()
                    if typeof(v10[v18]) ~= "function" then
                        local v20 = l_Error_0.new((v14 or "React class") .. ": " .. v13 .. " type `" .. v18 .. "` is invalid; " .. "it must be a function, usually from the `prop-types` package, but received `" .. typeof(v10[v18]) .. "`." .. "This often happens because of typos such as `PropTypes.function` instead of `PropTypes.func`.");
                        v20.name = "Invariant Violation";
                        error(v20);
                    end;
                    return v10[v18](v12, v18, v14, v13, nil, "SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED");
                end, l_describeError_0);
                local v23 = typeof(v22) == "table";
                if not (not (v22 ~= nil) or v23) then
                    if _G.__DEV__ then
                        if not v15 then
                            l_ReactDebugCurrentFrame_0.setExtraStackFrame(nil);
                        else
                            local l__owner_1 = v15._owner;
                            l_ReactDebugCurrentFrame_0.setExtraStackFrame((l_describeUnknownElementTypeFrameInDEV_0(v15.type, v15._source, if l__owner_1 ~= nil then l__owner_1.type else nil)));
                        end;
                    end;
                    v1.error(string.format("%s: type specification of %s" .. " `%s` is invalid; the type checker " .. "function must return `nil` or an `Error` but returned a %s. " .. "You may have forgotten to pass an argument to the type checker " .. "creator (arrayOf, instanceOf, objectOf, oneOf, oneOfType, and " .. "shape all require an argument).", v14 or "React class", v13, v18, (typeof(v22))));
                    if _G.__DEV__ then
                        l_ReactDebugCurrentFrame_0.setExtraStackFrame(nil);
                    end;
                end;
                if v23 and v2[v22.message] == nil then
                    v2[tostring(v22.message)] = true;
                    if _G.__DEV__ then
                        if not v15 then
                            l_ReactDebugCurrentFrame_0.setExtraStackFrame(nil);
                        else
                            local l__owner_2 = v15._owner;
                            l_ReactDebugCurrentFrame_0.setExtraStackFrame((l_describeUnknownElementTypeFrameInDEV_0(v15.type, v15._source, if l__owner_2 ~= nil then l__owner_2.type else nil)));
                        end;
                    end;
                    v1.warn(string.format("Failed %s type: %s", v13, (tostring(v22.message))));
                    if _G.__DEV__ then
                        l_ReactDebugCurrentFrame_0.setExtraStackFrame(nil);
                    end;
                end;
            end;
        end;
    end;
end;


local l_Parent_0 = script.Parent;
local l_console_0 = require(l_Parent_0.Parent.LuauPolyfill).console;
local v2 = require(l_Parent_0.consoleWithStackDev);
if not _G.__DEV__ then
    return l_console_0;
else
    return (setmetatable({
        warn = v2.warn,
        error = v2.error
    }, {
        __index = l_console_0
    }));
end;


local v0 = require(script.Parent.Parent.LuauPolyfill);
local l_console_0 = v0.console;
local l_Array_0 = v0.Array;
local v3 = require(script.Parent.ReactSharedInternals);
local v4 = nil;
local v7 = {
    warn = function(v5, ...)
        if _G.__DEV__ then
            v4("warn", v5, {
                ...
            });
        end;
    end,
    error = function(v6, ...)
        if _G.__DEV__ then
            v4("error", v6, {
                ...
            });
        end;
    end
};
v4 = function(v8, v9, v10)
    if _G.__DEV__ then
        local v11 = v3.ReactDebugCurrentFrame.getStackAddendum();
        if v11 ~= "" then
            v9 = v9 .. "%s";
            v10 = l_Array_0.slice(v10, 1);
            table.insert(v10, v11);
        end;
        local v12 = l_Array_0.map(v10, tostring);
        table.insert(v12, 1, "Warning: " .. v9);
        l_console_0[v8](unpack(v12));
    end;
end;
return v7;


local l_setTimeout_0 = require(script.Parent.Parent.LuauPolyfill).setTimeout;
return function(v1)
    return l_setTimeout_0(v1, 0);
end;


local l_HttpService_0 = game:GetService("HttpService");
return function(v1, ...)
    local v2 = "https://reactjs.org/docs/error-decoder.html?invariant=" .. tostring(v1);
    for v3 = 1, select("#", ...) do
        v2 = v2 .. "&args[]=" .. l_HttpService_0:UrlEncode(select(v3, ...));
    end;
    return string.format("Minified React error #%d; visit %s for the full message or " .. "use the non-minified dev environment for full errors and additional " .. "helpful warnings.", v1, v2);
end;


local v0 = require(script.Parent.console);
local v1 = require(script.Parent.ReactSymbols);
local l_REACT_CONTEXT_TYPE_0 = v1.REACT_CONTEXT_TYPE;
local l_REACT_FORWARD_REF_TYPE_0 = v1.REACT_FORWARD_REF_TYPE;
local l_REACT_FRAGMENT_TYPE_0 = v1.REACT_FRAGMENT_TYPE;
local l_REACT_PORTAL_TYPE_0 = v1.REACT_PORTAL_TYPE;
local l_REACT_MEMO_TYPE_0 = v1.REACT_MEMO_TYPE;
local l_REACT_PROFILER_TYPE_0 = v1.REACT_PROFILER_TYPE;
local l_REACT_PROVIDER_TYPE_0 = v1.REACT_PROVIDER_TYPE;
local l_REACT_STRICT_MODE_TYPE_0 = v1.REACT_STRICT_MODE_TYPE;
local l_REACT_SUSPENSE_TYPE_0 = v1.REACT_SUSPENSE_TYPE;
local l_REACT_SUSPENSE_LIST_TYPE_0 = v1.REACT_SUSPENSE_LIST_TYPE;
local l_REACT_LAZY_TYPE_0 = v1.REACT_LAZY_TYPE;
local l_REACT_BLOCK_TYPE_0 = v1.REACT_BLOCK_TYPE;
local _ = require(script.Parent.ReactTypes);
local l_describeError_0 = require(script.Parent["ErrorHandling.roblox"]).describeError;
local function _(v16, v17, v18)
    local v19 = "<function>";
    if typeof(v17) == "table" then
        v19 = (v17.displayName or v17.name) or "";
    end;
    return (v16.displayName or v19 ~= "" and string.format("%s(%s)", v18, v19)) or v18;
end;
local function _(v21)
    return v21.displayName or "Context";
end;
local function v23(v24)
    if v24 == nil then
        return nil;
    else
        local v25 = typeof(v24);
        if (_G.__DEV__ and v25 == "table") and typeof(v24.tag) == "number" then
            v0.warn("Received an unexpected object in getComponentName(). " .. "This is likely a bug in React. Please file an issue.");
        end;
        if v25 == "function" then
            local v26 = debug.info(v24, "n");
            if v26 and string.len(v26) > 0 then
                return v26;
            else
                return nil;
            end;
        elseif v25 == "string" then
            return v24;
        elseif v24 == l_REACT_FRAGMENT_TYPE_0 then
            return "Fragment";
        elseif v24 == l_REACT_PORTAL_TYPE_0 then
            return "Portal";
        elseif v24 == l_REACT_PROFILER_TYPE_0 then
            return "Profiler";
        elseif v24 == l_REACT_STRICT_MODE_TYPE_0 then
            return "StrictMode";
        elseif v24 == l_REACT_SUSPENSE_TYPE_0 then
            return "Suspense";
        elseif v24 == l_REACT_SUSPENSE_LIST_TYPE_0 then
            return "SuspenseList";
        else
            if v25 == "table" then
                local v27 = v24["$$typeof"];
                if v27 == l_REACT_CONTEXT_TYPE_0 then
                    return (v24.displayName or "Context") .. ".Consumer";
                elseif v27 == l_REACT_PROVIDER_TYPE_0 then
                    return (v24._context.displayName or "Context") .. ".Provider";
                elseif v27 == l_REACT_FORWARD_REF_TYPE_0 then
                    local l_render_0 = v24.render;
                    local v29 = "<function>";
                    if typeof(l_render_0) == "table" then
                        v29 = (l_render_0.displayName or l_render_0.name) or "";
                    end;
                    return (v24.displayName or v29 ~= "" and string.format("%s(%s)", "ForwardRef", v29)) or "ForwardRef";
                elseif v27 == l_REACT_MEMO_TYPE_0 then
                    return v23(v24.type);
                elseif v27 == l_REACT_BLOCK_TYPE_0 then
                    return v23(v24._render);
                elseif v27 == l_REACT_LAZY_TYPE_0 then
                    local v30, v31 = xpcall(v24._init, l_describeError_0, v24._payload);
                    if not v30 then
                        return nil;
                    else
                        return v23(v31);
                    end;
                elseif not v24.displayName then
                    if not v24.name then
                        local v32 = getmetatable(v24);
                        if not (not v32 or not rawget(v32, "__tostring")) then
                            return (tostring(v24));
                        end;
                    else
                        return v24.name;
                    end;
                else
                    return v24.displayName;
                end;
            end;
            return nil;
        end;
    end;
end;
return v23;


local _ = require(script.Parent.LuauPolyfill);
local v1 = require(script.ReactTypes);
local _ = require(script["flowtypes.roblox"]);
local _ = require(script.ReactElementType);
local v4 = require(script.ReactFiberHostConfig);
local v5 = require(script.ReactSharedInternals);
local v6 = require(script["ErrorHandling.roblox"]);
return {
    checkPropTypes = require(script.checkPropTypes),
    console = require(script.console),
    ConsolePatchingDev = require(script["ConsolePatchingDev.roblox"]),
    consoleWithStackDev = require(script.consoleWithStackDev),
    enqueueTask = require(script["enqueueTask.roblox"]),
    ExecutionEnvironment = require(script.ExecutionEnvironment),
    formatProdErrorMessage = require(script.formatProdErrorMessage),
    getComponentName = require(script.getComponentName),
    invariant = require(script.invariant),
    invokeGuardedCallbackImpl = require(script.invokeGuardedCallbackImpl),
    isValidElementType = require(script.isValidElementType),
    objectIs = require(script.objectIs),
    ReactComponentStackFrame = require(script.ReactComponentStackFrame),
    ReactElementType = require(script.ReactElementType),
    ReactErrorUtils = require(script.ReactErrorUtils),
    ReactFeatureFlags = require(script.ReactFeatureFlags),
    ReactInstanceMap = require(script.ReactInstanceMap),
    ReactSharedInternals = v5,
    ReactFiberHostConfig = v4,
    ReactSymbols = require(script.ReactSymbols),
    ReactVersion = require(script.ReactVersion),
    shallowEqual = require(script.shallowEqual),
    UninitializedState = require(script["UninitializedState.roblox"]),
    ReactTypes = v1,
    describeError = v6.describeError,
    errorToString = v6.errorToString,
    parseReactError = v6.parseReactError,
    Symbol = require(script["Symbol.roblox"]),
    Type = require(script["Type.roblox"]),
    Change = require(script.PropMarkers.Change),
    Event = require(script.PropMarkers.Event),
    Tag = require(script.PropMarkers.Tag)
};


local l_Error_0 = require(script.Parent.Parent.LuauPolyfill).Error;
return function(v1, v2, ...)
    if not v1 then
        error(l_Error_0(string.format(v2, ...)));
    end;
end;


local l_describeError_0 = require(script.Parent["ErrorHandling.roblox"]).describeError;
local function v11(v1, _, v3, v4, ...)
    local v5 = nil;
    local v6 = nil;
    if _G.__YOLO__ then
        v5 = true;
        if v4 == nil then
            v3(...);
        else
            v3(v4, ...);
        end;
    elseif v4 == nil then
        local v7, v8 = xpcall(v3, l_describeError_0, ...);
        v5 = v7;
        v6 = v8;
    else
        local v9, v10 = xpcall(v3, l_describeError_0, v4, ...);
        v5 = v9;
        v6 = v10;
    end;
    if not v5 then
        v1.onError(v6);
    end;
end;
if _G.__DEV__ then
end;
return v11;


local v0 = require(script.Parent.ReactSymbols);
local l_REACT_CONTEXT_TYPE_0 = v0.REACT_CONTEXT_TYPE;
local l_REACT_FORWARD_REF_TYPE_0 = v0.REACT_FORWARD_REF_TYPE;
local l_REACT_FRAGMENT_TYPE_0 = v0.REACT_FRAGMENT_TYPE;
local l_REACT_PROFILER_TYPE_0 = v0.REACT_PROFILER_TYPE;
local l_REACT_PROVIDER_TYPE_0 = v0.REACT_PROVIDER_TYPE;
local l_REACT_DEBUG_TRACING_MODE_TYPE_0 = v0.REACT_DEBUG_TRACING_MODE_TYPE;
local l_REACT_STRICT_MODE_TYPE_0 = v0.REACT_STRICT_MODE_TYPE;
local l_REACT_SUSPENSE_TYPE_0 = v0.REACT_SUSPENSE_TYPE;
local l_REACT_MEMO_TYPE_0 = v0.REACT_MEMO_TYPE;
local l_REACT_LAZY_TYPE_0 = v0.REACT_LAZY_TYPE;
local l_REACT_FUNDAMENTAL_TYPE_0 = v0.REACT_FUNDAMENTAL_TYPE;
local l_REACT_BLOCK_TYPE_0 = v0.REACT_BLOCK_TYPE;
local l_REACT_SERVER_BLOCK_TYPE_0 = v0.REACT_SERVER_BLOCK_TYPE;
local l_REACT_LEGACY_HIDDEN_TYPE_0 = v0.REACT_LEGACY_HIDDEN_TYPE;
return function(v15)
    local v16 = typeof(v15);
    if not (v16 ~= "string") or v16 == "function" then
        return true;
    elseif not ((((v15 ~= l_REACT_FRAGMENT_TYPE_0 and v15 ~= l_REACT_PROFILER_TYPE_0) and v15 ~= l_REACT_DEBUG_TRACING_MODE_TYPE_0) and v15 ~= l_REACT_STRICT_MODE_TYPE_0) and v15 ~= l_REACT_SUSPENSE_TYPE_0) or v15 == l_REACT_LEGACY_HIDDEN_TYPE_0 then
        return true;
    else
        if v16 == "table" then
            if not v15.isReactComponent then
                if not ((((((v15["$$typeof"] ~= l_REACT_LAZY_TYPE_0 and v15["$$typeof"] ~= l_REACT_MEMO_TYPE_0) and v15["$$typeof"] ~= l_REACT_PROVIDER_TYPE_0) and v15["$$typeof"] ~= l_REACT_CONTEXT_TYPE_0) and v15["$$typeof"] ~= l_REACT_FORWARD_REF_TYPE_0) and v15["$$typeof"] ~= l_REACT_FUNDAMENTAL_TYPE_0) and v15["$$typeof"] ~= l_REACT_BLOCK_TYPE_0) or v15[1] == l_REACT_SERVER_BLOCK_TYPE_0 then
                    return true;
                end;
            else
                return true;
            end;
        end;
        return false;
    end;
end;


return function(v0, v1)
    local v2;
    if v0 == v1 then
        v2 = true;
        if v0 == 0 then
            v2 = true;
            if not (1 / v0 ~= 1 / v1) then
                goto label0;
            end;
        else
            goto label0;
        end;
    end;
    v2 = false;
    if v0 ~= v0 then
        v2 = v1 ~= v1;
    end;
    ::label0::;
    return v2;
end;


local v0 = require(script.Parent.objectIs);
return function(v1, v2)
    if not v0(v1, v2) then
        if not ((typeof(v1) == "table" and v1 ~= nil) and typeof(v2) == "table") or v2 == nil then
            return false;
        else
            for v3, v4 in v1, nil, nil do
                if not v0(v2[v3], v4) then
                    return false;
                end;
            end;
            for v5, v6 in v2, nil, nil do
                if not v0(v1[v5], v6) then
                    return false;
                end;
            end;
            return true;
        end;
    else
        return true;
    end;
end;


local v0 = {};
local v2 = {
    __index = v0,
    __tostring = function(v1)
        return v1:toString();
    end
};
v0.new = function(v3, v4)
    return (setmetatable({
        message = v3,
        stack = debug.traceback(nil, 2 + (v4 == nil and 0 or v4))
    }, v2));
end;
v0.toString = function(v5)
    return v5.message;
end;
return v0;


return {
    Error = require(script.Error),
    try = require(script.try)
};


local v0 = require(script.Parent.Error);
local function v4(v1)
    if typeof(v1) == "string" then
        local _, v3 = v1:find(":[%d]+: ");
        return v0.new(if not v3 then v1 else v1:sub(v3 + 1), 1);
    else
        return v1;
    end;
end;
return function(v5, ...)
    return xpcall(v5, v4, ...);
end;


local v0 = {};
local v1 = {
    __index = v0
};
v0.new = function()
    return (setmetatable({
        _lines = {}
    }, v1));
end;
v0.write = function(v2, v3, ...)
    if select("#", ...) == 0 then
        table.insert(v2._lines, v3);
        return v2;
    else
        table.insert(v2._lines, v3:format(...));
        return v2;
    end;
end;
v0.verticalSpace = function(v4)
    if #v4._lines ~= 0 then
        table.insert(v4._lines, "");
    end;
    return v4;
end;
v0.toString = function(v5)
    return table.concat(v5._lines, "\n");
end;
return v0;


return function(v0, v1)
    if v0 == nil then
        return v1;
    else
        return v0;
    end;
end;


local l_script_0 = script;
local v1 = require(l_script_0.Error);
local v2 = require(l_script_0.LineWriter);
local _ = require(l_script_0.PromiseType);
return {
    LineWriter = v2,
    unwrapPromiseError = require(l_script_0.unwrapPromiseError),
    getDefaultValue = require(l_script_0.getDefaultValue),
    Error = v1.Error,
    try = v1.try
};


local v0 = require(script.Parent.Parent.Promise);
return function(v1)
    while v0.Error.is(v1) do
        v1 = v1.error;
    end;
    return v1;
end;


local v0 = require(script.Parent.createSignal);
return function(v1)
    local v2, v3 = v0();
    local l_v1_0 = v1;
    return {
        subscribe = function(_, v6)
            return v2:subscribe(v6);
        end,
        getValue = function(_)
            return l_v1_0;
        end
    }, function(v8)
        l_v1_0 = v8;
        v3(v8);
    end;
end;


local _ = require(script.Parent.types);
return function()
    local v1 = {};
    local v2 = {};
    local v3 = false;
    return {
        subscribe = function(_, v5)
            local v6 = {
                callback = v5,
                unsubscribed = false
            };
            if not v3 or v1[v5] then
                v1[v5] = v6;
            else
                v2[v5] = v6;
            end;
            return {
                unsubscribe = function(_)
                    v6.unsubscribed = true;
                    v1[v5] = nil;
                    v2[v5] = nil;
                end
            };
        end
    }, function(v8)
        v3 = true;
        for v9, v10 in v1, nil, nil do
            if not (v10.unsubscribed or v2[v9]) then
                v9(v8);
            end;
        end;
        v3 = false;
        for v11, v12 in v2, nil, nil do
            v1[v11] = v12;
        end;
        table.clear(v2);
    end;
end;


local v0 = require(script.createSignal);
local v1 = require(script.createReadableSignal);
local _ = require(script.types);
return {
    createSignal = v0,
    createReadableSignal = v1
};


return require(script.Parent.Parent.Parent.dependencies).enumerate(script.Name, {
    Contact = "contact",
    MutualFriends = "mutualFriends",
    Frequents = "frequents",
    None = "none"
});


return require(script.Parent.Parent.Parent.dependencies).enumerate(script.Name, {
    HomePage = "homepage",
    MorePage = "morepage",
    GameDetails = "gameDetails",
    PlayerSearch = "playerSearch",
    PlayerProfile = "playerProfile",
    SocialTab = "SocialTab",
    FriendsLanding = "friendsLanding",
    FriendRequests = "friendRequestsPage",
    Chat = "chat",
    AddFriends = "addUniversalFriends"
});


return require(script.Parent.Parent.Parent.dependencies).enumerate(script.Name, {
    JoinGameInPeopleList = "joinGameInPeopleList",
    ButtonClick = "buttonClick",
    PageLoad = "luaPageLoad",
    PageMountingTime = "pageMountingTime",
    PageLoadingTime = "pageLoadingTime",
    FriendsCarouselLoaded = "friendsCarouselLoaded",
    UserSeen = "userSeen"
});


return require(script.Parent.Parent.Parent.dependencies).enumerate(script.Name, {
    NotFriends = "nonfriend",
    Friends = "friend",
    RequestSent = "requestSent",
    RequestReceived = "requestReceived",
    Ineligible = "ineligible",
    Recommendation = "recommendation"
});


return require(script.Parent.Parent.Parent.dependencies).enumerate(script.Name, {
    PlayerProfile = "playerProfile"
});


return require(script.Parent.Parent.Parent.dependencies).enumerate(script.Name, {
    InGame = "inGame",
    InStudio = "inStudio",
    Offline = "offline",
    Online = "online"
});


return require(script.Parent.Parent.Parent.dependencies).enumerate(script.Name, {
    PeekView = "peekView"
});


return {
    Contexts = require(script.Contexts),
    EventTypes = require(script.EventTypes),
    FriendStatuses = require(script.FriendStatuses),
    PresenceTypes = require(script.PresenceTypes),
    SubPages = require(script.SubPages),
    Pages = require(script.Pages),
    ContextTypes = require(script.ContextTypes)
};


local _ = require(script.Parent.Types);
local v1 = require(script.Parent.getEventInfo);
local v2 = require(script.Parent.optionallyLog);
local v3 = require(script.Parent.Parent.Parent.RoduxTools.compose);
local v4 = require(script.Parent.reportCounter);
local function v6(v5)
    return "Fired diagCounter: " .. v5.name .. ", count: " .. (not not v5.count and tostring(v5.count) or "1");
end;
return function(v7)
    return function(v8)
        return v3(v4(v7.diagImpl), v2(v7.loggerImpl, v6), v1(v7.eventList))(v8);
    end;
end;


local l_llama_0 = require(script.Parent.Parent.Parent.dependencies).llama;
local _ = require(script.Parent.Types);
local v2 = require(script.Parent.toStringAdditionalArgs);
local v3 = require(script.Parent.getEventInfo);
local v4 = require(script.Parent.optionallyLog);
local v5 = require(script.Parent.Parent.Parent.RoduxTools.compose);
local v6 = require(script.Parent.Parent.Parent.Utils.isEnum);
local function _(v7)
    return l_llama_0.Dictionary.map(v7 or {}, function(v8)
        if not v6(v8) then
            return v8;
        else
            return v8.rawValue();
        end;
    end);
end;
local function v15(v10, v11)
    if v10 and v11 then
        return l_llama_0.Dictionary.map(v10, function(v12, v13)
            local v14 = v11[v13];
            if not v14 then
                return l_llama_0.None;
            elseif type(v14) == "function" then
                return (v14(v12));
            else
                return v12;
            end;
        end);
    else
        return {};
    end;
end;
local function v17(v16)
    return string.format("context: (%s), eventName: (%s), additionalInfo: (%s)", v16.context, v16.eventType, v2(v16.additionalInfo));
end;
local function _(v18)
    return function(v19)
        v18:setRBXEventStream(v19.context, v19.eventType, v19.additionalInfo);
        return v19;
    end;
end;
return function(v21)
    local v22 = v3(v21.eventList);
    return function(v23, v24)
        local v25 = v22(v23);
        local l_v5_0 = v5;
        local v27 = v4(v21.loggerImpl, v17);
        local l_eventStreamImpl_0 = v21.eventStreamImpl;
        l_v5_0(v27, function(v29)
            l_eventStreamImpl_0:setRBXEventStream(v29.context, v29.eventType, v29.additionalInfo);
            return v29;
        end)({
            context = v25.context.rawValue(),
            eventType = v25.eventType.rawValue(),
            additionalInfo = l_llama_0.Dictionary.join(v21.infoForAllEvents or {}, l_llama_0.Dictionary.map(v25.additionalInfo or {}, function(v30)
                if not v6(v30) then
                    return v30;
                else
                    return v30.rawValue();
                end;
            end), v15(v24, v25.formatRulesForAdditionalInfo))
        });
        return v23, v24;
    end;
end;


local _ = require(script.Parent.Types);
return function(v1)
    return function(v2)
        local v3 = v1[v2];
        assert(v3, "Invalid eventName used: " .. tostring(v2) .. " called");
        return v3;
    end;
end;


return {
    fireDiagCounter = require(script.fireDiagCounter),
    fireEventStream = require(script.fireEventStream)
};


local _ = require(script.Parent.Types);
return function(v1, v2)
    return function(v3)
        if v1 then
            v1:info(v2(v3));
        end;
        return v3;
    end;
end;


local _ = require(script.Parent.Types);
return function(v1)
    return function(v2)
        v1:reportCounter(v2.name, v2.count or 1);
        return v2;
    end;
end;


local v0 = require(script.Parent.Parent.Parent.dependencies);
local l_tutils_0 = v0.tutils;
local l_llama_0 = v0.llama;
return function(v3)
    if not l_llama_0.isEmpty(v3) then
        local v4, _ = string.gsub(" args: " .. l_tutils_0.toString(v3), "%s+", " ");
        return v4;
    else
        return "{}";
    end;
end;


local l_ContextTypes_0 = require(script.Parent.Parent.Parent.Analytics.Enums).ContextTypes;
return function(v1)
    if v1 == nil then
        return nil;
    else
        return l_ContextTypes_0[v1.rawValue()].rawValue();
    end;
end;


local l_Parent_0 = script.Parent.Parent.Parent;
local v1 = require(l_Parent_0.dependencies);
local l_PresenceTypes_0 = require(l_Parent_0.Analytics.Enums).PresenceTypes;
local l_PresenceType_0 = v1.RoduxPresence.Enums.PresenceType;
local v4 = {
    [l_PresenceType_0.InGame] = l_PresenceTypes_0.InGame.rawValue(),
    [l_PresenceType_0.InStudio] = l_PresenceTypes_0.InStudio.rawValue(),
    [l_PresenceType_0.Offline] = l_PresenceTypes_0.Offline.rawValue(),
    [l_PresenceType_0.Online] = l_PresenceTypes_0.Online.rawValue()
};
return function(v5)
    return v4[v5];
end;


return {
    formatContextType = require(script.formatContextType),
    formatPresence = require(script.formatPresence)
};


return require(script.Parent.Parent.Parent.dependencies).enumerate(script.Name, {
    PlayerProfile = "playerProfile",
    FriendsLanding = "friendsLanding"
});


local v0 = require(script.Parent.EventNames);
local _ = require(script.Parent.Parent.FireEvent.Types);
return {
    [v0.HomePage_AddFriends] = {
        name = game:DefineFastString("SocialNavigationHomePageAddFriends", "HomePageAddFriends")
    },
    [v0.HomePage_Carousel_LuaProfile] = {
        name = game:DefineFastString("SocialNavigationHomePageCarouselLuaProfile", "LuaProfileEntryHomePageFriendsCarousel")
    },
    [v0.HomePage_Carousel_FriendsLanding] = {
        name = game:DefineFastString("SocialNavigationHomePageFriendsLanding", "HomePageNavigationFriendsLanding")
    },
    [v0.MorePage_FriendsLanding] = {
        name = game:DefineFastString("SocialNavigationMorePageFriendsLanding", "MorePageNavigationFriendsLanding")
    }
};


return require(script.Parent.Parent.Parent.dependencies).enumerate(script.Name, {
    HomePage_AddFriends = "HomePage_AddFriends",
    HomePage_Carousel_LuaProfile = "HomePage_Carousel_LuaProfile",
    HomePage_Carousel_FriendsLanding = "HomePage_Carousel_FriendsLanding",
    MorePage_FriendsLanding = "MorePage_FriendsLanding"
});


local v0 = require(script.Parent.EventNames);
local v1 = require(script.Parent.Parent.Enums);
local l_Contexts_0 = v1.Contexts;
local l_EventTypes_0 = v1.EventTypes;
local l_SubPages_0 = v1.SubPages;
local l_Pages_0 = v1.Pages;
local v6 = require(script.Parent.BtnValues);
local function v8(v7)
    return (tostring(v7));
end;
return {
    [v0.HomePage_Carousel_LuaProfile] = {
        context = l_Contexts_0.HomePage,
        eventType = l_EventTypes_0.ButtonClick,
        additionalInfo = {
            btn = v6.PlayerProfile,
            subpage = l_SubPages_0.PeekView,
            page = l_Pages_0.PlayerProfile
        },
        formatRulesForAdditionalInfo = {
            uid = v8
        }
    },
    [v0.HomePage_Carousel_FriendsLanding] = {
        context = l_Contexts_0.HomePage,
        eventType = l_EventTypes_0.ButtonClick,
        additionalInfo = {
            btn = v6.FriendsLanding
        },
        formatRulesForAdditionalInfo = {
            uid = v8
        }
    },
    [v0.MorePage_FriendsLanding] = {
        context = l_Contexts_0.HomePage,
        eventType = l_EventTypes_0.ButtonClick,
        additionalInfo = {
            btn = v6.FriendsLanding
        },
        formatRulesForAdditionalInfo = {
            uid = v8
        }
    }
};


local v0 = require(script.Parent.Parent.FireEvent.fireEventStream);
local v1 = require(script.Parent.Parent.FireEvent.fireDiagCounter);
local v2 = require(script.Parent.DiagEventList);
local v3 = require(script.Parent.EventStreamEventList);
local _ = require(script.Parent.Parent.FireEvent.Types);
return function(v5)
    local v6 = v0({
        eventStreamImpl = v5.analytics.EventStream,
        eventList = v3,
        loggerImpl = v5.loggerImpl,
        infoForAllEvents = v5.infoForAllEvents
    });
    local v7 = v1({
        diagImpl = v5.analytics.Diag,
        eventList = v2,
        loggerImpl = v5.loggerImpl
    });
    return function(v8, v9)
        if v3[v8] then
            v6(v8, v9);
        end;
        if v2[v8] then
            v7(v8);
        end;
        return DateTime.now();
    end;
end;


return {
    EventNames = require(script.EventNames),
    fireNavigationEvent = require(script.fireNavigationEvent)
};


local v0 = {};
v0.__index = v0;
v0.ButtonName = {
    LuaChatInputBar = "luaChatInputBar",
    LuaGameDetails = "luaGameDetails"
};
v0.EventName = {
    InviteSent = "inputShareGameInviteSent",
    EntryPoint = "inputShareGameEntryPoint"
};
v0.DiagCounters = {
    EntryPoint = {
        [v0.ButtonName.LuaChatInputBar] = game:DefineFastString("LuaShareGameLuaChatInputBarEntryCounter", "LuaShareGameLuaChatInputBarEntryCounter"),
        [v0.ButtonName.LuaGameDetails] = game:DefineFastString("LuaShareGameLuaGameDetailsEntryCounter", "LuaShareGameLuaGameDetailsEntryCounter")
    },
    InviteSent = {
        [v0.ButtonName.LuaChatInputBar] = game:DefineFastString("LuaShareGameLuaChatInputBarInviteCounter", "LuaShareGameLuaChatInputBarInviteCounter"),
        [v0.ButtonName.LuaGameDetails] = game:DefineFastString("LuaShareGameLuaGameDetailsInviteCounter", "LuaShareGameLuaGameDetailsInviteCounter")
    }
};
v0.new = function(v1, v2, v3)
    assert(v1, "EventStream implementation not found.");
    assert(v2, "Diag implementation not found.");
    assert(v3, "ButtonName not found.");
    return (setmetatable({
        _eventStreamImpl = v1,
        _diagImpl = v2,
        _buttonName = v3
    }, v0));
end;
v0.onActivatedInviteSent = function(v4, v5, v6, v7, v8, v9)
    v4:_getEventStream():setRBXEventStream("touch", v0.EventName.InviteSent, {
        btn = v4:_getButtonName(),
        placeId = tostring(v5),
        gameId = tostring(v6),
        senderId = v7,
        conversationId = tostring(v8),
        participants = table.concat(v9, ",")
    });
    local v10 = v0.DiagCounters.InviteSent[v4:_getButtonName()];
    if v10 then
        v4:_getDiag():reportCounter(v10, 1);
    end;
end;
v0.inputShareGameEntryPoint = function(v11, v12, v13)
    v11:_getEventStream():setRBXEventStream("touch", v0.EventName.EntryPoint, {
        btn = v11:_getButtonName(),
        placeId = v12 and tostring(v12),
        gameId = v13 and tostring(v13)
    });
    local v14 = v0.DiagCounters.EntryPoint[v11:_getButtonName()];
    if v14 then
        v11:_getDiag():reportCounter(v14, 1);
    end;
end;
v0._getEventStream = function(v15)
    return v15._eventStreamImpl;
end;
v0._getDiag = function(v16)
    return v16._diagImpl;
end;
v0._getButtonName = function(v17)
    return v17._buttonName;
end;
return v0;


local l_script_0 = script;
return {
    ShareGameAnalytics = require(l_script_0.ShareGameAnalytics),
    Enums = require(l_script_0.Enums),
    FireEvent = require(l_script_0.FireEvent),
    Navigation = require(l_script_0.Navigation),
    Formatters = require(l_script_0.Formatters)
};


local v0 = require(script:FindFirstAncestor("SocialLibraries").dependencies);
local l_Roact_0 = v0.Roact;
local l_UIBlox_0 = v0.UIBlox;
local v3 = require(script.Parent.Parent.FitFrameVertical);
local v4 = l_Roact_0.Component:extend("AlertView");
v4.defaultProps = {
    Visible = false,
    width = UDim.new(0.5, 0),
    contentPaddingLeft = 12,
    contentPaddingRight = 12,
    contentPaddingTop = 12,
    contentPaddingBottom = 12
};
v4.render = function(v5)
    return l_UIBlox_0.Style.withStyle(function(v6)
        return l_Roact_0.createElement(v3, {
            Visible = v5.props.Visible,
            AnchorPoint = Vector2.new(0.5, 0.5),
            BackgroundColor3 = v6.Theme.BackgroundUIDefault.Color,
            Position = UDim2.new(0.5, 0, 0.5, 0),
            width = v5.props.width
        }, {
            InnerFrame = l_Roact_0.createElement(v3, {
                margin = {
                    top = v5.props.contentPaddingTop,
                    bottom = v5.props.contentPaddingBottom,
                    left = v5.props.contentPaddingLeft,
                    right = v5.props.contentPaddingRight
                },
                width = UDim.new(1, 0),
                BackgroundTransparency = 1,
                HorizontalAlignment = Enum.HorizontalAlignment.Center
            }, v5.props[l_Roact_0.Children])
        });
    end);
end;
return v4;


local v0 = require(script:FindFirstAncestor("SocialLibraries").dependencies);
local l_Roact_0 = v0.Roact;
local l_UIBlox_0 = v0.UIBlox;
local l_Button_0 = l_UIBlox_0.App.Button.Button;
local l_ButtonType_0 = l_UIBlox_0.App.Button.Enum.ButtonType;
local v5 = l_Roact_0.PureComponent:extend("AlertViewButton");
v5.defaultProps = {
    LayoutOrder = 0,
    secondary = false,
    onActivated = function()
    end,
    Size = UDim2.new(1, 0, 1, 0),
    Text = ""
};
v5.render = function(v6)
    local l_PrimarySystem_0 = l_ButtonType_0.PrimarySystem;
    if v6.props.secondary then
        l_PrimarySystem_0 = l_ButtonType_0.Secondary;
    end;
    return l_Roact_0.createElement(l_Button_0, {
        buttonType = l_PrimarySystem_0,
        size = v6.props.Size,
        layoutOrder = v6.props.LayoutOrder,
        text = v6.props.Text,
        onActivated = v6.props.onActivated
    });
end;
return v5;


local v0 = require(script:FindFirstAncestor("SocialLibraries").dependencies);
local l_Roact_0 = v0.Roact;
local l_UIBlox_0 = v0.UIBlox;
local v3 = require(script.Parent.CheckIcon);
local v4 = l_Roact_0.Component:extend("AlertViewCheckbox");
v4.defaultProps = {
    Text = "",
    LayoutOrder = 0,
    onActivated = function()
    end,
    checked = false
};
v4.render = function(v5)
    return l_UIBlox_0.Style.withStyle(function(v6)
        return l_Roact_0.createElement("Frame", {
            BackgroundTransparency = 1,
            BorderSizePixel = 0,
            LayoutOrder = v5.props.LayoutOrder,
            Size = UDim2.new(1, 0, 0, 35)
        }, {
            List = l_Roact_0.createElement("UIListLayout", {
                FillDirection = Enum.FillDirection.Horizontal,
                SortOrder = Enum.SortOrder.LayoutOrder,
                VerticalAlignment = Enum.VerticalAlignment.Center,
                Padding = UDim.new(0, 10)
            }),
            Checkbox = l_Roact_0.createElement(v3, {
                BackgroundTransparency = 1,
                BorderSizePixel = 0,
                LayoutOrder = 1,
                checked = v5.props.checked,
                onActivated = v5.props.onActivated
            }),
            Label = l_Roact_0.createElement("TextLabel", {
                BackgroundTransparency = 1,
                BorderSizePixel = 0,
                LayoutOrder = 2,
                Size = UDim2.new(0.7, 0, 1, 0),
                Text = v5.props.Text,
                TextColor3 = v5.props.TextColor3 or v6.Theme.TextDefault.Color,
                TextSize = v5.props.TextSize or v6.Font.Body.RelativeSize * v6.Font.BaseSize,
                Font = v5.props.Font or v6.Font.CaptionSubHeader.Font,
                TextXAlignment = Enum.TextXAlignment.Left
            })
        });
    end);
end;
return v4;


local v0 = require(script:FindFirstAncestor("SocialLibraries").dependencies);
local l_Roact_0 = v0.Roact;
local l_UIBlox_0 = v0.UIBlox;
local v3 = l_Roact_0.PureComponent:extend("AlertViewLabel");
v3.defaultProps = {
    BackgroundTransparency = 1,
    Size = UDim2.new(1, 0, 0, 40),
    Text = "",
    TextXAlignment = Enum.TextXAlignment.Center
};
v3.render = function(v4)
    return l_UIBlox_0.Style.withStyle(function(v5)
        return l_Roact_0.createElement("TextLabel", {
            BackgroundTransparency = v4.props.BackgroundTransparency,
            Font = v4.props.Font or v5.Font.Body.Font,
            LayoutOrder = v4.props.LayoutOrder,
            Size = v4.props.Size,
            Text = v4.props.Text,
            TextColor3 = v4.props.TextColor3 or v5.Theme.TextDefault.Color,
            TextSize = v4.props.TextSize or v5.Font.Body.RelativeSize * v5.Font.BaseSize,
            TextWrapped = true,
            TextXAlignment = v4.props.TextXAlignment
        });
    end);
end;
return v3;


local l_Roact_0 = require(script:FindFirstAncestor("SocialLibraries").dependencies).Roact;
local v1 = l_Roact_0.PureComponent:extend("AlertViewSoakArea");
v1.defaultProps = {
    Visible = true,
    BackgroundTransparency = 0.75,
    BackgroundColor3 = Color3.fromRGB(255, 0, 255)
};
v1.render = function(v2)
    return l_Roact_0.createElement("ImageButton", {
        Size = UDim2.new(1, 0, 1, 0),
        BackgroundTransparency = v2.props.BackgroundTransparency,
        BackgroundColor3 = v2.props.BackgroundColor3,
        Active = true,
        AutoButtonColor = false,
        Visible = v2.props.Visible
    }, v2.props[l_Roact_0.Children]);
end;
return v1;


local v0 = require(script:FindFirstAncestor("SocialLibraries").dependencies);
local l_Roact_0 = v0.Roact;
local l_UIBlox_0 = v0.UIBlox;
local l_Cryo_0 = v0.Cryo;
local v4 = require(script.Parent.Images);
local v5 = Color3.fromRGB(200, 200, 200);
local v6 = Rect.new(7, 8, 7, 8);
local v7 = l_Roact_0.PureComponent:extend("AlertViewTextbox");
v7.defaultProps = {
    LayoutOrder = 0,
    Text = "",
    PlaceholderText = nil
};
v7.render = function(v8)
    return l_UIBlox_0.Style.withStyle(function(v9)
        local v10 = Vector2.new(0, 0);
        local v11 = Vector2.new(0, 0);
        local _ = nil;
        local l_Font_0 = v9.Font;
        local l_LayoutOrder_0 = v8.props.LayoutOrder;
        local l_PlaceholderText_0 = v8.props.PlaceholderText;
        local l_Theme_0 = v9.Theme;
        return l_Roact_0.createElement("ImageLabel", {
            ImageRectSize = v11,
            BackgroundTransparency = 1,
            Image = v4.buttonStroke.Image,
            ImageColor3 = l_Theme_0.UIDefault.Color,
            ImageRectOffset = v10,
            LayoutOrder = l_LayoutOrder_0,
            ScaleType = Enum.ScaleType.Slice,
            Size = UDim2.new(1, 0, 0, 30),
            SliceCenter = v6
        }, {
            Textbox = l_Roact_0.createElement("TextBox", {
                BackgroundTransparency = 1,
                ClearTextOnFocus = false,
                Font = l_Font_0.Header2.Font,
                PlaceholderText = l_PlaceholderText_0,
                PlaceholderColor3 = v5,
                Position = UDim2.new(0, 6, 0, 0),
                Size = UDim2.new(1, -12, 1, 0),
                Text = v8.props.Text,
                TextColor3 = l_Theme_0.TextDefault.Color,
                TextSize = l_Font_0.BaseSize * l_Font_0.CaptionBody.RelativeSize,
                TextTruncate = Enum.TextTruncate.AtEnd,
                TextWrapped = true,
                TextXAlignment = Enum.TextXAlignment.Left,
                [l_Roact_0.Change.Text] = function(v17)
                    if v8.props.onTextChanged then
                        v8.props.onTextChanged(v17.Text);
                    end;
                end,
                [l_Roact_0.Ref] = v8.props.forwardRef
            })
        });
    end);
end;
return l_Roact_0.forwardRef(function(v18, v19)
    return l_Roact_0.createElement(v7, l_Cryo_0.Dictionary.join(v18, {
        forwardRef = v19
    }));
end);


local v0 = require(script:FindFirstAncestor("SocialLibraries").dependencies);
local l_Roact_0 = v0.Roact;
local l_UIBlox_0 = v0.UIBlox;
local v3 = require(script.Parent.Images);
local v4 = l_Roact_0.PureComponent:extend("CheckIcon");
v4.defaultProps = {
    checked = false,
    onActivated = function()
    end
};
v4.render = function(v5)
    local v6 = not not v5.props.checked and v3.checkFill or v3.checkStroke;
    return l_UIBlox_0.Style.withStyle(function(v7)
        return l_Roact_0.createElement("Frame", {
            BackgroundTransparency = 1,
            BorderSizePixel = 0,
            Size = UDim2.new(0, 17, 0, 17)
        }, {
            Button = l_Roact_0.createElement("ImageButton", {
                AutoButtonColor = false,
                BackgroundTransparency = 1,
                BorderSizePixel = 0,
                Image = v6.Image,
                ImageRectOffset = v6.ImageRectOffset,
                ImageRectSize = v6.ImageRectSize,
                ImageColor3 = v7.Theme.UIDefault.Color,
                ScaleType = Enum.ScaleType.Slice,
                Size = UDim2.new(1, 0, 1, 0),
                SliceCenter = v6.SliceCenter,
                [l_Roact_0.Event.MouseButton1Click] = v5.props.onActivated
            })
        });
    end);
end;
return v4;


return {
    buttonFill = {
        Image = "rbxasset://textures/ui/LuaDiscussions/buttonFill.png",
        SliceCenter = Rect.new(7, 8, 7, 8),
        ImageRectSize = Vector2.new(0, 0),
        ImageRectOffset = Vector2.new(0, 0)
    },
    buttonStroke = {
        Image = "rbxasset://textures/ui/LuaDiscussions/buttonStroke.png",
        SliceCenter = Rect.new(7, 8, 7, 8),
        ImageRectSize = Vector2.new(0, 0),
        ImageRectOffset = Vector2.new(0, 0)
    },
    checkFill = {
        Image = "rbxasset://textures/ui/LuaDiscussions/buttonFill.png",
        SliceCenter = Rect.new(15, 15, 16, 16),
        ImageRectSize = Vector2.new(0, 0),
        ImageRectOffset = Vector2.new(0, 0)
    },
    checkStroke = {
        Image = "rbxasset://textures/ui/LuaDiscussions/buttonStroke.png",
        SliceCenter = Rect.new(15, 15, 16, 16),
        ImageRectSize = Vector2.new(0, 0),
        ImageRectOffset = Vector2.new(0, 0)
    }
};


local l_script_FirstAncestor_0 = script:FindFirstAncestor("SocialLibraries");
local v1 = require(l_script_FirstAncestor_0.dependencies);
local l_Roact_0 = v1.Roact;
local l_Cryo_0 = v1.Cryo;
local l_UIBlox_0 = v1.UIBlox;
local l_Text_0 = v1.Text;
local l_Components_0 = l_script_FirstAncestor_0.Components;
local v7 = require(l_Components_0.AlertView.AlertViewLabel);
local v8 = require(l_Components_0.AlertView.AlertViewTextbox);
local v9 = require(l_Components_0.AlertView.AlertViewSoakArea);
local v10 = require(script.Parent.Parent.FitFrameVertical);
local l_InteractiveAlert_0 = l_UIBlox_0.App.Dialog.Alert.InteractiveAlert;
local l_CheckboxList_0 = l_UIBlox_0.App.InputButton.CheckboxList;
local v13 = l_Roact_0.Component:extend("AlertViewBuilder");
local v14 = game:DefineFastFlag("AlertViewUseScreenSize", false);
v13.defaultProps = {
    bodyText = "",
    buttons = {},
    checkboxes = {},
    textboxes = {},
    displayTextbox = false,
    onActivated = function()
    end,
    onModalClose = function()
    end,
    onModalStayOpen = function()
    end,
    onModalOpen = function()
    end,
    title = "",
    checkboxHeight = 50,
    childComponentWidth = 220,
    screenSize = Vector2.new(0, 0),
    soakAreaColor3 = Color3.fromRGB(255, 0, 255),
    soakAreaTransparency = 0.5,
    inputLengthExceeded = nil
};
v13.init = function(v15)
    local v16 = {};
    local v17 = 0;
    local v18 = 0;
    for v19, _ in pairs(v15.props.checkboxes) do
        v16[v19] = false;
        v17 = v17 + 1;
    end;
    v15.refs = {};
    for v21, _ in pairs(v15.props.textboxes) do
        v15.refs[v21] = l_Roact_0.createRef();
        v18 = v18 + 1;
    end;
    v15.state = {
        checkboxStatuses = v16,
        numCheckboxes = v17,
        numTextboxes = v18
    };
    v15.calcTextboxTextHeight = function(v23, v24)
        local v25 = v23.Font.Body.RelativeSize * v23.Font.BaseSize;
        local l_Font_0 = v23.Font.Body.Font;
        local v27 = 0;
        if v24 and v24 ~= "" then
            v27 = l_Text_0.GetTextHeight(v24, l_Font_0, v25, v15.props.childComponentWidth);
        end;
        return v27;
    end;
end;
v13.didMount = function(v28)
    if type(v28.props.onModalOpen) == "function" then
        v28.props.onModalOpen();
    end;
end;
v13.reset = function(v29)
    for _, v31 in pairs(v29.refs) do
        if v31.current then
            v31.current.Text = "";
        end;
    end;
    local v32 = {};
    for v33, _ in pairs(v29.state.checkboxStatuses) do
        v32[v33] = false;
    end;
    v29:setState({
        checkboxStatuses = v32
    });
end;
v13.makeButtonTable = function(v35)
    local v36 = {
        buttons = {}
    };
    for v37, v38 in ipairs(v35.props.buttons) do
        table.insert(v36.buttons, {});
        v36.buttons[v37] = l_Cryo_0.Dictionary.join(v38, {
            props = l_Cryo_0.Dictionary.join(v38.props, {
                layoutOrder = v37,
                onActivated = function()
                    v35.props.onActivated();
                    local v39 = {};
                    for v40, v41 in pairs(v35.refs) do
                        v39[v40] = not not v41.current and v41.current.Text or "";
                    end;
                    if v38.props.onActivated(v39, v35.state.checkboxStatuses) then
                        v35.props.onModalStayOpen();
                        return ;
                    else
                        v35:reset();
                        v35:setState({
                            displayingModal = false
                        });
                        v35.props.onModalClose();
                        return ;
                    end;
                end
            })
        });
    end;
    return v36;
end;
v13.makeTextboxList = function(v42, v43)
    local v44 = {};
    local l_Color_0 = v43.Theme.TextDefault.Color;
    if v42.props.inputLengthExceeded then
        l_Color_0 = v43.Theme.Alert.Color;
    end;
    for v46, v47 in pairs(v42.props.textboxes) do
        v44[v46] = l_Roact_0.createElement(v10, {
            width = UDim.new(1, 0),
            BorderSizePixel = 0,
            BackgroundTransparency = 1,
            LayoutOrder = v47.LayoutOrder
        }, {
            [v46] = l_Roact_0.createElement(v8, {
                onTextChanged = v47.onTextChanged,
                PlaceholderText = v47.PlaceholderText,
                Text = v47.Text,
                LayoutOrder = 1,
                [l_Roact_0.Ref] = v42.refs[v46]
            }),
            [v46 .. " Below Text"] = (not not v47.belowText and v47.belowText ~= "") and l_Roact_0.createElement(v7, {
                BackgroundTransparency = 1,
                Text = v47.belowText,
                LayoutOrder = 2,
                TextXAlignment = v47.belowTextAlignment or Enum.TextXAlignment.Left,
                Size = UDim2.new(1, 0, 0, (v42.calcTextboxTextHeight(v43, v47.belowText))),
                TextColor3 = l_Color_0
            }) or nil,
            [v46 .. " Warning Text"] = (not not v47.warningText and v47.warningText ~= "") and l_Roact_0.createElement(v7, {
                BackgroundTransparency = 1,
                Text = v47.warningText,
                LayoutOrder = 3,
                TextXAlignment = Enum.TextXAlignment.Left,
                Size = UDim2.new(1, 0, 0, (v42.calcTextboxTextHeight(v43, v47.warningText))),
                TextColor3 = v43.Theme.Alert.Color
            }) or nil
        });
    end;
    return v44;
end;
v13.makeCheckboxList = function(v48)
    return l_Roact_0.createElement(l_CheckboxList_0, {
        checkboxes = v48.props.checkboxes,
        atMost = v48.state.numCheckboxes + 1,
        elementSize = UDim2.new(0, v48.props.childComponentWidth, 0, v48.props.checkboxHeight),
        onActivated = function(v49)
            v48:setState({
                checkboxStatuses = l_Cryo_0.Dictionary.join(v48.state.checkboxStatuses, v49)
            });
        end
    });
end;
v13.makeMiddleContent = function(v50, v51)
    local v52 = v50:makeTextboxList(v51);
    local v53 = v50:makeCheckboxList();
    local v54 = v50.state.numCheckboxes * v50.props.checkboxHeight;
    if v50.state.numTextboxes == 0 and v50.state.numCheckboxes == 0 then
        return nil;
    else
        return function()
            return l_Roact_0.createElement(v10, {
                width = UDim.new(1, 0),
                BorderSizePixel = 0,
                BackgroundTransparency = 1
            }, {
                Textboxes = l_Roact_0.createElement(v10, {
                    width = UDim.new(1, 0),
                    BorderSizePixel = 0,
                    BackgroundTransparency = 1,
                    LayoutOrder = 1
                }, v52),
                Checkboxes = l_Roact_0.createElement("Frame", {
                    Size = UDim2.new(1, 0, 0, v54),
                    BackgroundTransparency = 1,
                    LayoutOrder = 2
                }, v53)
            });
        end;
    end;
end;
v13.render = function(v55)
    assert(v55.props.displayTextbox or not v55.props.mandatoryInput);
    return l_UIBlox_0.Style.withStyle(function(v56)
        return l_Roact_0.createElement(v9, {
            BackgroundColor3 = v55.props.soakAreaColor3,
            BackgroundTransparency = v55.props.soakAreaTransparency,
            Visible = v55.state.displayingModal
        }, {
            alertView = l_Roact_0.createElement(l_InteractiveAlert_0, {
                title = v55.props.title,
                bodyText = v55.props.bodyText ~= "" and v55.props.bodyText or nil,
                middleContent = v55:makeMiddleContent(v56),
                buttonStackInfo = v55:makeButtonTable(),
                screenSize = if not v14 then Vector2.new(0, 0) else v55.props.screenSize
            })
        });
    end);
end;
return v13;


local l_script_FirstAncestor_0 = script:FindFirstAncestor("SocialLibraries");
local v1 = require(l_script_FirstAncestor_0.dependencies);
local l_Roact_0 = v1.Roact;
local l_Components_0 = l_script_FirstAncestor_0.Components;
local l_ButtonType_0 = v1.UIBlox.App.Button.Enum.ButtonType;
local v5 = require(l_Components_0.AlertViewBuilder.AlertViewBuilder);
local v6 = l_Roact_0.Component:extend("InfoAlertView");
v6.defaultProps = {
    titleText = "TestTitle",
    bodyText = "TestBody",
    confirmText = "TestConfirm",
    width = UDim.new(0.5, 0),
    screenSize = Vector2.new(0, 0),
    onModalClose = function()
    end,
    soakAreaColor3 = Color3.fromRGB(0, 0, 255),
    soakAreaTransparency = 0.9
};
v6.render = function(v7)
    local l_props_0 = v7.props;
    return l_Roact_0.createElement(v5, {
        title = l_props_0.titleText,
        bodyText = l_props_0.bodyText,
        width = l_props_0.width,
        screenSize = l_props_0.screenSize,
        onModalClose = l_props_0.onModalClose,
        buttons = {
            {
                buttonType = l_ButtonType_0.PrimarySystem,
                props = {
                    text = l_props_0.confirmText,
                    onActivated = l_props_0.onModalClose
                }
            }
        },
        soakAreaColor3 = l_props_0.soakAreaColor3,
        soakAreaTransparency = l_props_0.soakAreaTransparency
    });
end;
return v6;


local l_script_FirstAncestor_0 = script:FindFirstAncestor("SocialLibraries");
local v1 = require(l_script_FirstAncestor_0.dependencies);
local l_Roact_0 = v1.Roact;
local l_ButtonType_0 = v1.UIBlox.App.Button.Enum.ButtonType;
local l_Components_0 = l_script_FirstAncestor_0.Components;
local l_UserInputService_0 = v1.UserInputService;
local v6 = require(l_Components_0.AlertViewBuilder.AlertViewBuilder);
local v7 = l_Roact_0.Component:extend("InputAlertView");
v7.defaultProps = {
    titleText = "TestTitle",
    cancelText = "TestCancel",
    confirmText = "TestConfirm",
    warningText = nil,
    inputText = "TestInput",
    maxCharacters = 150,
    onActivated = function()
    end,
    onModalClose = function()
    end,
    screenSize = Vector2.new(0, 0),
    soakAreaColor3 = Color3.fromRGB(0, 0, 255),
    soakAreaTransparency = 0.9
};
v7.init = function(v8)
    v8.ref = l_Roact_0.createRef();
    v8.onTextChanged = function(v9)
        v8:setState({
            inputText = v9,
            inputLengthExceeded = v8.props.maxCharacters < #v9
        });
    end;
    v8.onButtonActivated = function()
        v8.closing = true;
    end;
    v8.updateModalPosition = function()
        v8:setState({
            keyboardOffset = not not l_UserInputService_0.OnScreenKeyboardVisible and (v8.state.yPosition + v8.ref:getValue().AbsoluteSize.Y) - l_UserInputService_0.OnScreenKeyboardPosition.Y or 0
        });
    end;
    v8.onModalStayOpen = function()
        v8.closing = false;
        v8.updateModalPosition();
    end;
    v8.keyboardConnection = l_UserInputService_0:GetPropertyChangedSignal("OnScreenKeyboardVisible"):connect(function()
        spawn(function()
            if v8.isMounted and not v8.closing then
                v8.updateModalPosition();
                return ;
            else
                return ;
            end;
        end);
    end);
    v8.onPositionChanged = function(v10)
        if v8.isMounted then
            if v10.AbsolutePosition.Y ~= v8.state.yPosition then
                v8:setState({
                    yPosition = v10.AbsolutePosition.Y
                });
            end;
            return ;
        else
            return ;
        end;
    end;
    v8.closing = false;
    v8.state = {
        inputText = v8.props.inputText,
        inputLengthExceeded = false,
        keyboardOffset = 0,
        yPosition = 0
    };
end;
v7.render = function(v11)
    local l_props_0 = v11.props;
    local _ = nil;
    local l_maxCharacters_0 = l_props_0.maxCharacters;
    return l_Roact_0.createElement("Frame", {
        Size = UDim2.new(1, 0, 1, -v11.state.keyboardOffset),
        Transparency = 1,
        [l_Roact_0.Change.AbsolutePosition] = v11.onPositionChanged,
        [l_Roact_0.Ref] = v11.ref
    }, {
        AlertView = l_Roact_0.createElement(v6, {
            buttons = if l_props_0.displayFailed then {
                {
                    buttonType = l_ButtonType_0.Alert,
                    props = {
                        text = l_props_0.failedText,
                        onActivated = l_props_0.onActivated
                    }
                }
            } else {
                {
                    buttonType = l_ButtonType_0.Secondary,
                    props = {
                        text = l_props_0.cancelText,
                        onActivated = function()
                        end
                    }
                },
                {
                    buttonType = l_ButtonType_0.PrimarySystem,
                    props = {
                        text = l_props_0.confirmText,
                        isDisabled = v11.state.inputLengthExceeded,
                        onActivated = l_props_0.onActivated
                    }
                }
            },
            inputLengthExceeded = v11.state.inputLengthExceeded,
            onActivated = v11.onButtonActivated,
            onModalClose = l_props_0.onModalClose,
            onModalStayOpen = v11.onModalStayOpen,
            soakAreaColor3 = v11.props.soakAreaColor3,
            soakAreaTransparency = v11.props.soakAreaTransparency,
            textboxes = {
                InputBox = {
                    belowText = l_maxCharacters_0 and #v11.state.inputText .. "/" .. l_maxCharacters_0,
                    belowTextAlignment = Enum.TextXAlignment.Right,
                    LayoutOrder = 1,
                    onTextChanged = v11.onTextChanged,
                    PlaceholderText = l_props_0.placeholderText,
                    Text = l_props_0.inputText,
                    warningText = v11.props.warningText
                }
            },
            title = l_props_0.titleText,
            screenSize = l_props_0.screenSize
        })
    });
end;
v7.didMount = function(v15)
    v15.isMounted = true;
end;
v7.willUnmount = function(v16)
    v16.isMounted = false;
    if v16.keyboardConnection then
        v16.keyboardConnection:Disconnect();
        v16.keyboardConnection = nil;
    end;
end;
return v7;


local l_script_FirstAncestor_0 = script:FindFirstAncestor("SocialLibraries");
local v1 = require(l_script_FirstAncestor_0.dependencies);
local l_Roact_0 = v1.Roact;
local l_Components_0 = l_script_FirstAncestor_0.Components;
local l_ButtonType_0 = v1.UIBlox.App.Button.Enum.ButtonType;
local v5 = require(l_Components_0.AlertViewBuilder.AlertViewBuilder);
local v6 = l_Roact_0.Component:extend("WarningAlertView");
v6.defaultProps = {
    titleText = "TestTitle",
    bodyText = "TestBody",
    cancelText = "TestCancel",
    confirmText = "TestConfirm",
    failureTitleText = "failure title",
    failureBodyText = "Thing failure",
    failureButtonText = "failure Placeholder",
    screenSize = Vector2.new(0, 0),
    width = UDim.new(0.5, 0),
    displayFailed = false,
    onActivated = function()
    end,
    onModalClose = function()
    end,
    soakAreaColor3 = Color3.fromRGB(0, 0, 255),
    soakAreaTransparency = 0.9
};
local function v7()
end;
v6.render = function(v8)
    local l_props_0 = v8.props;
    local v10 = nil;
    local v11 = nil;
    local v12 = nil;
    if not l_props_0.displayFailed then
        v11 = v8.props.titleText;
        v12 = v8.props.bodyText;
        v10 = {
            {
                buttonType = l_ButtonType_0.Secondary,
                props = {
                    text = l_props_0.cancelText,
                    onActivated = v7
                }
            },
            {
                buttonType = l_ButtonType_0.PrimarySystem,
                props = {
                    text = l_props_0.confirmText,
                    onActivated = l_props_0.onActivated
                }
            }
        };
    else
        v11 = v8.props.failureTitleText;
        v12 = v8.props.failureBodyText;
        v10 = {
            {
                buttonType = l_ButtonType_0.Alert,
                props = {
                    text = l_props_0.failureButtonText,
                    onActivated = v7
                }
            }
        };
    end;
    return l_Roact_0.createElement(v5, {
        title = v11,
        bodyText = v12,
        screenSize = v8.props.screenSize,
        width = v8.props.width,
        onModalClose = v8.props.onModalClose,
        buttons = v10,
        soakAreaColor3 = l_props_0.soakAreaColor3,
        soakAreaTransparency = l_props_0.soakAreaTransparency
    });
end;
return v6;


local v0 = require(script:FindFirstAncestor("SocialLibraries").dependencies);
local l_Roact_0 = v0.Roact;
local l_ImageSetLabel_0 = v0.UIBlox.Core.ImageSet.ImageSetLabel;
local v3 = l_Roact_0.PureComponent:extend("AvatarCircle");
v3.PresetSize = {
    Size36x36 = "Size36x36",
    Size48x48 = "Size48x48"
};
local v4 = {
    [v3.PresetSize.Size36x36] = "rbxasset://textures/ui/LuaChat/graphic/gr-profile-border-36x36.png",
    [v3.PresetSize.Size48x48] = "rbxasset://textures/ui/LuaChat/graphic/gr-profile-border-48x48.png"
};
v3.defaultProps = {
    thumbnails = {},
    onActivated = nil,
    circleColor3 = Color3.new(0.9, 0.9, 0.9),
    circleTransparency = 0,
    circleInteriorBackgroundColor3 = Color3.new(0.8, 0.8, 0.8),
    circleInteriorBackgroundTransparency = 0,
    circleDividerColor3 = Color3.new(0.7, 0.7, 0.7),
    circleDividerTransparency = 0,
    overlaySize = v3.PresetSize.Size48x48,
    presenceImage = nil,
    presenceIndicatorSize = 14
};
local function v6(v5)
    return {
        layout = l_Roact_0.createElement("UIListLayout", {
            FillDirection = Enum.FillDirection.Vertical,
            VerticalAlignment = Enum.VerticalAlignment.Center,
            HorizontalAlignment = v5,
            SortOrder = Enum.SortOrder.LayoutOrder
        })
    };
end;
v3.generateThumbnails = function(v7, v8)
    local v9 = #v8;
    local v10 = v9 / 2;
    local v11 = not not (v9 % 2 == 0) and v10 or math.floor(v10);
    local v12 = v9 - v11;
    local v13 = nil;
    if v9 == 1 then
        v13 = if not v7.props.showNewPresenceImage then l_Roact_0.createElement("ImageLabel", {
            Size = UDim2.new(0, v7.props.presenceIndicatorSize, 0, v7.props.presenceIndicatorSize),
            BackgroundTransparency = 1,
            Image = v7.props.presenceImage
        }) else l_Roact_0.createElement(l_ImageSetLabel_0, {
            Size = UDim2.new(0, v7.props.presenceIndicatorSize, 0, v7.props.presenceIndicatorSize),
            BackgroundTransparency = 1,
            Image = v7.props.presenceImage,
            ImageColor3 = v7.props.presenceImageColor3,
            ImageTransparency = v7.props.presenceImageTransparency
        });
    end;
    local v14 = v6(Enum.HorizontalAlignment.Right);
    local v15 = v6(Enum.HorizontalAlignment.Left);
    local v16 = v6(Enum.HorizontalAlignment.Center);
    for v17, v18 in ipairs(v8) do
        local v19 = nil;
        local v20 = 0;
        local v21 = nil;
        local v22 = nil;
        if v9 == 1 then
            v19 = UDim2.new(1, 0, 1, 0);
            v21 = v16;
        elseif v17 <= v11 then
            v19 = UDim2.new(1 / v11, 0, 1 / v11, 0);
            v21 = v14;
            if v9 == 3 then
                v20 = 0.125;
            elseif v9 == 2 then
                v20 = 0.125;
            end;
            v22 = l_Roact_0.createElement("Frame", {
                Size = UDim2.new(1, 0, 1, 0),
                BackgroundTransparency = 1,
                ZIndex = 2
            }, {
                border = l_Roact_0.createElement("Frame", {
                    Size = UDim2.new(1, 0, 0, 2),
                    Position = UDim2.new(0, 0, 1, -1),
                    BorderSizePixel = 0,
                    BackgroundColor3 = v7.props.circleDividerColor3,
                    BackgroundTransparency = v7.props.circleDividerTransparency
                }),
                borderVertical = l_Roact_0.createElement("Frame", {
                    Size = UDim2.new(0, 2, 1, 0),
                    Position = UDim2.new(0, -1, 0, 0),
                    BorderSizePixel = 0,
                    BackgroundColor3 = v7.props.circleDividerColor3,
                    BackgroundTransparency = v7.props.circleDividerTransparency
                })
            });
        else
            v19 = UDim2.new(1 / v12, 0, 1 / v12, 0);
            v21 = v15;
            if v9 == 2 then
                v20 = -0.125;
            end;
            v22 = l_Roact_0.createElement("Frame", {
                Size = UDim2.new(1, 0, 1, 0),
                BackgroundTransparency = 1,
                ZIndex = 2
            }, {
                border = l_Roact_0.createElement("Frame", {
                    Size = UDim2.new(1, 0, 0, 2),
                    Position = UDim2.new(0, 0, 0, -1),
                    BorderSizePixel = 0,
                    BackgroundColor3 = v7.props.circleDividerColor3,
                    BackgroundTransparency = v7.props.circleDividerTransparency
                }),
                borderVertical = l_Roact_0.createElement("Frame", {
                    Size = UDim2.new(0, 2, 1, 0),
                    Position = UDim2.new(0, -1, 0, 0),
                    BorderSizePixel = 0,
                    BackgroundColor3 = v7.props.circleDividerColor3,
                    BackgroundTransparency = v7.props.circleDividerTransparency
                })
            });
        end;
        v21["thumbnail-" .. tostring(v17 + 1)] = l_Roact_0.createElement("Frame", {
            BackgroundTransparency = 1,
            Size = v19,
            ClipsDescendants = true,
            LayoutOrder = #v21 + 1
        }, {
            headshotContainer = l_Roact_0.createElement("Frame", {
                Size = UDim2.new(1, 0, 1, 0),
                Position = UDim2.new(v20, 0, 0, 0),
                BackgroundTransparency = 1
            }, {
                headshot = l_Roact_0.createElement("ImageLabel", {
                    Size = UDim2.new(1, 0, 1, 0),
                    BackgroundTransparency = 1,
                    Image = v18
                })
            }),
            borderObject = v22
        });
    end;
    return {
        rightElements = v15,
        leftElements = v14,
        centerElements = v16,
        presenceIndicator = v13
    };
end;
v3.render = function(v23)
    local l_thumbnails_0 = v23.props.thumbnails;
    local v25 = v4[v23.props.overlaySize];
    local v26 = v23:generateThumbnails(l_thumbnails_0);
    return l_Roact_0.createElement("ImageButton", {
        Size = UDim2.new(1, 0, 1, 0),
        BackgroundColor3 = v23.props.circleInteriorBackgroundColor3,
        BackgroundTransparency = v23.props.circleInteriorBackgroundTransparency,
        BorderSizePixel = 0,
        Image = "",
        AutoButtonColor = false,
        ClipsDescendants = true,
        [l_Roact_0.Event.Activated] = v23.props.onActivated
    }, {
        imageMask = l_Roact_0.createElement("ImageLabel", {
            Image = v25,
            ImageColor3 = v23.props.circleColor3,
            ImageTransparency = v23.props.circleTransparency,
            Size = UDim2.new(1, 0, 1, 0),
            BackgroundTransparency = 1,
            BorderSizePixel = 0
        }, {
            presenceFrame = l_Roact_0.createElement("Frame", {
                BackgroundTransparency = 1,
                Size = UDim2.new(1, 0, 1, 0)
            }, {
                layout = l_Roact_0.createElement("UIListLayout", {
                    HorizontalAlignment = Enum.HorizontalAlignment.Right,
                    VerticalAlignment = Enum.VerticalAlignment.Bottom
                }),
                presenceIndicator = v26.presenceIndicator
            })
        }),
        center = l_Roact_0.createElement("Frame", {
            Size = UDim2.new(1, 0, 1, 0),
            BackgroundTransparency = 1
        }, {
            elementContainer = l_Roact_0.createElement("Frame", {
                Size = UDim2.new(1, 0, 1, 0),
                BackgroundTransparency = 1
            }, v26.centerElements)
        }),
        left = l_Roact_0.createElement("Frame", {
            Size = UDim2.new(1, -1, 1, 0),
            Position = UDim2.new(-0.5, 0, 0, 0),
            BackgroundTransparency = 1
        }, {
            elementContainer = l_Roact_0.createElement("Frame", {
                Size = UDim2.new(1, 0, 1, 0),
                BackgroundTransparency = 1
            }, v26.leftElements)
        }),
        right = l_Roact_0.createElement("Frame", {
            Size = UDim2.new(1, -1, 1, 0),
            Position = UDim2.new(0.5, -2, 0, 0),
            BackgroundTransparency = 1
        }, {
            elementContainer = l_Roact_0.createElement("Frame", {
                Size = UDim2.new(1, 0, 1, 0),
                BackgroundTransparency = 1
            }, v26.rightElements)
        })
    });
end;
return v3;


local v0 = require(script:FindFirstAncestor("SocialLibraries").dependencies);
local l_Roact_0 = v0.Roact;
local l_UIBlox_0 = v0.UIBlox;
local l_Config_0 = l_UIBlox_0.Config;
local l_ImageSetLabel_0 = l_UIBlox_0.Core.ImageSet.ImageSetLabel;
local v5 = l_Roact_0.PureComponent:extend("CallbackInputBox");
v5.defaultProps = {
    initialInputText = "",
    inputTextFont = if not l_Config_0.enableFontNameMapping then Enum.Font.Gotham else Enum.Font.BuilderSans,
    inputTextColor3 = Color3.new(1, 0, 1),
    inputTextSize = 14,
    inputTextYAlignment = Enum.TextYAlignment.Center,
    inputTextXAlignment = Enum.TextXAlignment.Center,
    inputTextTransparency = 0,
    placeholderTextTransparency = 0.6,
    placeholderTextColor3 = Color3.new(1, 0, 0),
    placeholderText = "Test placeholder text",
    clearIcon = "rbxasset://textures/ui/LuaChat/icons/ic-close-white.png",
    clearIconColor3 = Color3.new(1, 1, 0),
    clearIconTransparency = 0,
    clearButtonSize = 24,
    clipsDescendants = true,
    manualFocusRelease = false,
    captureFocusOnMount = false,
    multiLine = false,
    textWrapped = false,
    showCancelIconOnLoad = false,
    textInputType = Enum.TextInputType.Default,
    returnKeyType = Enum.ReturnKeyType.Default,
    clearButtonDisabled = nil,
    textChangedCallback = nil,
    focusChangedCallback = function()
    end,
    onSelectCallback = function()
    end,
    returnPressedFromOnScreenKeyboardCallback = function()
    end,
    inputBoxRef = nil,
    [l_Roact_0.Change.AbsoluteSize] = function()
    end
};
v5.init = function(v6)
    v6.clearRef = l_Roact_0.createRef();
    v6.inputBoxRef = v6.props.inputBoxRef or l_Roact_0.createRef();
    v6.inputText = v6.props.initialInputText;
    v6.textChangedEventUnlocked = false;
    v6.focusTextbox = function()
        v6.props.onSelectCallback();
        if not v6.inputBoxRef.current:IsFocused() then
            v6.inputBoxRef.current:captureFocus();
        end;
    end;
end;
v5.render = function(v7)
    local l_placeholderTextTransparency_0 = v7.props.placeholderTextTransparency;
    local l_inputTextTransparency_0 = v7.props.inputTextTransparency;
    local _ = nil;
    return l_Roact_0.createElement("Frame", {
        BackgroundTransparency = 1,
        Size = UDim2.new(1, 0, 1, 0)
    }, {
        layout = l_Roact_0.createElement("UIListLayout", {
            VerticalAlignment = Enum.VerticalAlignment.Center,
            HorizontalAlignment = Enum.HorizontalAlignment.Left,
            FillDirection = Enum.FillDirection.Horizontal,
            SortOrder = Enum.SortOrder.LayoutOrder
        }),
        inputBox = l_Roact_0.createElement("Frame", {
            BackgroundTransparency = 1,
            Size = UDim2.new(1, 0, 1, 0),
            LayoutOrder = 1
        }, {
            layout = l_Roact_0.createElement("UIListLayout", {
                VerticalAlignment = Enum.VerticalAlignment.Center,
                HorizontalAlignment = Enum.HorizontalAlignment.Left,
                FillDirection = Enum.FillDirection.Horizontal,
                SortOrder = Enum.SortOrder.LayoutOrder
            }),
            inputTextBox = l_Roact_0.createElement("TextBox", {
                BackgroundTransparency = 1,
                Size = UDim2.new(1, -v7.props.clearButtonSize, 1, 0),
                Position = UDim2.new(0, 0, 0, 0),
                TextColor3 = v7.props.inputTextColor3,
                TextSize = v7.props.inputTextSize,
                TextTransparency = if not v7.inputText or v7.inputText == "" then l_placeholderTextTransparency_0 else l_inputTextTransparency_0,
                Font = v7.props.inputTextFont,
                PlaceholderText = v7.props.placeholderText,
                PlaceholderColor3 = v7.props.placeholderTextColor3,
                TextXAlignment = v7.props.inputTextXAlignment,
                TextYAlignment = v7.props.inputTextYAlignment,
                OverlayNativeInput = true,
                ClearTextOnFocus = false,
                ClipsDescendants = v7.props.clipsDescendants,
                LayoutOrder = 1,
                ManualFocusRelease = v7.props.manualFocusRelease,
                MultiLine = v7.props.multiLine,
                TextWrapped = v7.props.textWrapped,
                TextInputType = v7.props.textInputType,
                ReturnKeyType = v7.props.returnKeyType,
                [l_Roact_0.Event.ReturnPressedFromOnScreenKeyboard] = v7.props.returnPressedFromOnScreenKeyboardCallback,
                [l_Roact_0.Event.TouchTap] = v7.focusTextbox,
                [l_Roact_0.Event.Focused] = function(v11)
                    if v7.inputBoxRef.current and v7.inputBoxRef.current.Text ~= "" then
                        if not (not v7.clearRef.current or v7.props.clearButtonDisabled) then
                            v7.clearRef.current.Visible = true;
                        end;
                        v11.TextColor3 = v7.props.inputTextColor3;
                        v11.TextTransparency = l_inputTextTransparency_0;
                    else
                        v11.TextColor3 = v7.props.placeholderTextColor3;
                        v11.TextTransparency = l_placeholderTextTransparency_0;
                    end;
                    v7.props.focusChangedCallback(true);
                end,
                [l_Roact_0.Event.FocusLost] = function(v12, v13)
                    if v7.inputBoxRef.current and v7.inputBoxRef.current.Text == "" then
                        v12.TextColor3 = v7.props.placeholderTextColor3;
                        v12.TextTransparency = l_placeholderTextTransparency_0;
                    end;
                    v7.props.focusChangedCallback(false, v13);
                end,
                [l_Roact_0.Change.Text] = function(v14)
                    if not (v14.Text == "" and not v7.textChangedEventUnlocked) then
                        if v14.Text ~= "" then
                            if not (not v7.clearRef.current or v7.props.clearButtonDisabled) then
                                v7.clearRef.current.Visible = true;
                            end;
                            v14.TextColor3 = v7.props.inputTextColor3;
                            v14.TextTransparency = l_inputTextTransparency_0;
                        else
                            if v7.clearRef.current then
                                v7.clearRef.current.Visible = false;
                            end;
                            v14.TextColor3 = v7.props.placeholderTextColor3;
                            v14.TextTransparency = l_placeholderTextTransparency_0;
                        end;
                        v7.inputText = v14.Text;
                        if v7.props.textChangedCallback then
                            v7.props.textChangedCallback(v14.Text);
                        end;
                    end;
                    v7.textChangedEventUnlocked = true;
                end,
                [l_Roact_0.Ref] = v7.inputBoxRef,
                [l_Roact_0.Change.AbsoluteSize] = v7.props[l_Roact_0.Change.AbsoluteSize]
            }),
            Clear = l_Roact_0.createElement("ImageButton", {
                BackgroundTransparency = 1,
                Size = UDim2.new(0, v7.props.clearButtonSize, 1, 0),
                AutoButtonColor = false,
                LayoutOrder = 2,
                Visible = not v7.props.clearButtonDisabled,
                [l_Roact_0.Event.Activated] = function()
                    if v7.inputBoxRef.current then
                        v7.inputBoxRef.current.Text = "";
                    end;
                    v7.inputText = "";
                    if v7.clearRef.current then
                        v7.clearRef.current.Visible = false;
                    end;
                end
            }, {
                layout = l_Roact_0.createElement("UIListLayout", {
                    VerticalAlignment = "Center",
                    HorizontalAlignment = "Center"
                }),
                Icon = l_Roact_0.createElement(l_ImageSetLabel_0, {
                    BackgroundTransparency = 1,
                    Size = UDim2.new(0, v7.props.clearButtonSize, 0, v7.props.clearButtonSize),
                    Image = v7.props.clearIcon,
                    ImageColor3 = v7.props.clearIconColor3,
                    ImageTransparency = v7.props.clearIconTransparency,
                    Visible = v7.props.showCancelIconOnLoad,
                    [l_Roact_0.Ref] = v7.clearRef
                })
            })
        })
    });
end;
v5.didMount = function(v15)
    if v15.inputBoxRef.current then
        v15.inputBoxRef.current.Text = v15.inputText;
        if v15.props.captureFocusOnMount then
            spawn(function()
                if not (not v15.inputBoxRef or not v15.inputBoxRef.current) then
                    v15.inputBoxRef.current:captureFocus();
                end;
            end);
        end;
    end;
end;
return v5;