local N=require(script.Parent.Parent.Packages.Roact)local C=require(script.Parent.Parent.Packages.t)local D=require(script.Parent.Parent.config)local Z=require(script.Parent.Parent.DevModuleConfig.ConfigurationContext)local j=require(script.Parent.Parent.enums)local l=require(script.Parent.EmoteBar)local O=require(script.Parent.EmoteWheelBillboard)local a=N.Component:extend("\069\109\111\116\101\086\105\101\119")a.defaultProps={isVisible=true;forceHide=false}a.validateProps=C.strictInterface({forceHide=C.boolean;isVisible=C.boolean;configuration=D.client.validate})function a.render(C)local D=C.props.configuration.guiType if D==j.GuiType.EmoteBar then return N.createElement(l,{isVisible=C.props.isVisible and not C.props.forceHide})elseif D==j.GuiType.EmoteWheel then return N.createElement(O,{isVisible=C.props.isVisible})end end return Z.withConfiguration(a)
--[[
    Chooses between the different GuiTypes that the emotes can be displayed in
]]

local Roact = require(script.Parent.Parent.Packages.Roact)
local t = require(script.Parent.Parent.Packages.t)
local configs = require(script.Parent.Parent.config)
local ConfigurationContext = require(script.Parent.Parent.DevModuleConfig.ConfigurationContext)
local enums = require(script.Parent.Parent.enums)
local EmoteBar = require(script.Parent.EmoteBar)
local EmoteWheelBillboard = require(script.Parent.EmoteWheelBillboard)

local EmoteView = Roact.Component:extend("EmoteView")

EmoteView.defaultProps = {
	isVisible = true,
	forceHide = false,
}

EmoteView.validateProps = t.strictInterface({
	forceHide = t.boolean,
	isVisible = t.boolean,
	configuration = configs.client.validate,
})

function EmoteView:render()
	local guiType = self.props.configuration.guiType

	if guiType == enums.GuiType.EmoteBar then
		return Roact.createElement(EmoteBar, {
			isVisible = self.props.isVisible and not self.props.forceHide,
		})
	elseif guiType == enums.GuiType.EmoteWheel then
		return Roact.createElement(EmoteWheelBillboard, {
			isVisible = self.props.isVisible,
		})
	end
end

return ConfigurationContext.withConfiguration(EmoteView)
