local d={}local t=require(script:FindFirstAncestor("\080\108\117\103\105\110\070\114\097\109\101\119\111\114\107"))local l local m local S local N local B local R local v local j local q local i local K function d.Get(d)return l.createElement("\070\114\097\109\101",{BackgroundTransparency=1,Size=UDim2.fromScale(1,1)},{DividerLine=l.createElement("\070\114\097\109\101",{AnchorPoint=Vector2.new(.5,0),BackgroundColor3=K:GetColor(K.Indexes.BottomBar.Divider),Position=UDim2.fromScale(.5,0),Size=UDim2.new(1,-10,0,N.BottomBar.Pixel.DividerHeight);BorderSizePixel=0}),Space=l.createElement("\070\114\097\109\101",{BackgroundTransparency=1;Position=UDim2.fromOffset(0,N.BottomBar.Pixel.DividerHeight),Size=UDim2.new(1,0,1,-N.BottomBar.Pixel.DividerHeight)},{SettingsButtonHolder=l.createElement("\070\114\097\109\101",{BackgroundTransparency=1;Size=UDim2.new(0,N.BottomBar.Pixel.SettingsWidth,1,0)},{UIPadding=l.createElement("\085\073\080\097\100\100\105\110\103",{PaddingBottom=UDim.new(0,1),PaddingLeft=UDim.new(0,5);PaddingTop=UDim.new(0,2)}),SettingsButton=R:Get({text="\083\101\116\116\105\110\103\115",color=K:GetColor(K.Indexes.BottomBar.SettingsButton),activatedCallback=function()i:OpenSettings()end})}),VersionLabel=l.createElement("\084\101\120\116\076\097\098\101\108",{Font=i:GetSetting("\070\111\110\116");Text=q.Version,TextColor3=K:GetColor(K.Indexes.BottomBar.Version),TextScaled=true;TextXAlignment=Enum.TextXAlignment.Right;TextYAlignment=Enum.TextYAlignment.Bottom,AnchorPoint=Vector2.new(1,1),BackgroundTransparency=1,Position=UDim2.fromScale(1,1),Size=UDim2.new(1,0,.8,0)})})})end function d.FrameworkInit(d)l=t:Require("\082\111\097\099\116")m=t:Require("\082\111\097\099\116\077\097\099\114\111\067\111\110\116\097\105\110\101\114")S=t:Require("\082\111\097\099\116\083\101\097\114\099\104\066\097\114")N=t:Require("\087\105\100\103\101\116\067\111\110\115\116\097\110\116\115")B=t:Require("\083\111\099\107\101\116\067\111\110\116\114\111\108\108\101\114")R=t:Require("\082\111\097\099\116\066\117\116\116\111\110")j=t:Require("\080\108\117\103\105\110\072\097\110\100\108\101\114")v=t:Require("\083\116\117\100\105\111\072\097\110\100\108\101\114")q=t:Require("\083\111\099\107\101\116\067\111\110\115\116\097\110\116\115")i=t:Require("\083\111\099\107\101\116\083\101\116\116\105\110\103\115")K=t:Require("\087\105\100\103\101\116\084\104\101\109\101")end function d.FrameworkStart(d) end return d
---
---Main Widget
---
---@class RoactBottomBar
---
local RoactBottomBar = {}

--------------------------------------------------
-- Types
-- ...

--------------------------------------------------
-- Dependencies
local PluginFramework = require(script:FindFirstAncestor("PluginFramework")) ---@type Framework
local Roact ---@type Roact
local RoactMacroContainer ---@type RoactMacroContainer
local RoactSearchBar ---@type RoactSearchBar
local WidgetConstants ---@type WidgetConstants
local SocketController ---@type SocketController
local RoactButton ---@type RoactButton
local StudioHandler ---@type StudioHandler
local PluginHandler ---@type PluginHandler
local SocketConstants ---@type SocketConstants
local SocketSettings ---@type SocketSettings
local WidgetTheme ---@type WidgetTheme

--------------------------------------------------
-- Constants
-- ...

--------------------------------------------------
-- Members

---
---@return RoactElement
---
function RoactBottomBar:Get()
    return Roact.createElement("Frame", {
        BackgroundTransparency = 1,
        Size = UDim2.fromScale(1, 1),
    }, {
        DividerLine = Roact.createElement("Frame", {
            AnchorPoint = Vector2.new(0.5, 0),
            BackgroundColor3 = WidgetTheme:GetColor(WidgetTheme.Indexes.BottomBar.Divider),
            Position = UDim2.fromScale(0.5, 0),
            Size = UDim2.new(1, -10, 0, WidgetConstants.BottomBar.Pixel.DividerHeight),
            BorderSizePixel = 0,
        }),

        Space = Roact.createElement("Frame", {
            BackgroundTransparency = 1,
            Position = UDim2.fromOffset(0, WidgetConstants.BottomBar.Pixel.DividerHeight),
            Size = UDim2.new(1, 0, 1, -WidgetConstants.BottomBar.Pixel.DividerHeight),
        }, {
            SettingsButtonHolder = Roact.createElement("Frame", {
                BackgroundTransparency = 1,
                Size = UDim2.new(0, WidgetConstants.BottomBar.Pixel.SettingsWidth, 1, 0),
            }, {
                UIPadding = Roact.createElement("UIPadding", {
                    PaddingBottom = UDim.new(0, 1),
                    PaddingLeft = UDim.new(0, 5),
                    PaddingTop = UDim.new(0, 2),
                }),
                SettingsButton = RoactButton:Get({
                    text = "Settings",
                    color = WidgetTheme:GetColor(WidgetTheme.Indexes.BottomBar.SettingsButton),
                    activatedCallback = function()
                        SocketSettings:OpenSettings()
                    end,
                }),
            }),

            VersionLabel = Roact.createElement("TextLabel", {
                Font = SocketSettings:GetSetting("Font"),
                Text = SocketConstants.Version,
                TextColor3 = WidgetTheme:GetColor(WidgetTheme.Indexes.BottomBar.Version),
                TextScaled = true,
                TextXAlignment = Enum.TextXAlignment.Right,
                TextYAlignment = Enum.TextYAlignment.Bottom,
                AnchorPoint = Vector2.new(1, 1),
                BackgroundTransparency = 1,
                Position = UDim2.fromScale(1, 1),
                Size = UDim2.new(1, 0, 0.8, 0),
            }),
        }),
    })
end

---
---@private
---
---Asynchronously called with all other FrameworkInit()
---
function RoactBottomBar:FrameworkInit()
    Roact = PluginFramework:Require("Roact")
    RoactMacroContainer = PluginFramework:Require("RoactMacroContainer")
    RoactSearchBar = PluginFramework:Require("RoactSearchBar")
    WidgetConstants = PluginFramework:Require("WidgetConstants")
    SocketController = PluginFramework:Require("SocketController")
    RoactButton = PluginFramework:Require("RoactButton")
    PluginHandler = PluginFramework:Require("PluginHandler")
    StudioHandler = PluginFramework:Require("StudioHandler")
    SocketConstants = PluginFramework:Require("SocketConstants")
    SocketSettings = PluginFramework:Require("SocketSettings")
    WidgetTheme = PluginFramework:Require("WidgetTheme")
end

---
---@private
---
---Synchronously called, one after the other, with all other FrameworkStart()
---
function RoactBottomBar:FrameworkStart() end

return RoactBottomBar
