local R=game:GetService("\072\116\116\112\083\101\114\118\105\099\101")local D=script.Parent.packages local o=require(D.fusion)local N=require(D.states)local G=require(script.Parent.components.commandbar.bar)local I=require(script.Parent.components.notification.holder)local m=require(script.Parent.components.commandbar.suggestions)local U=o.Children local P=o.ForPairs local q=o.New return function(D)return(q("\083\099\114\101\101\110\071\117\105"))({Name=R:GenerateGUID(false);DisplayOrder=100,IgnoreGuiInset=true,ScreenInsets=Enum.ScreenInsets.DeviceSafeInsets;ResetOnSpawn=false,ZIndexBehavior=Enum.ZIndexBehavior.Sibling,Parent=D,[U]={G(),m(),I(),P(N.Objects,function(R,D)return R,D end,o.cleanup)}})end
--[[
	File: app.lua
	Where the app is created and then passed to the main script to be rendered
]]

-- < Services >
local HttpService = game:GetService("HttpService")

-- < Packages >
local Packages = script.Parent.packages
local Fusion = require(Packages.fusion)
local States = require(Packages.states)

-- < Components >
local Bar = require(script.Parent.components.commandbar.bar)
local NotificationHolder = require(script.Parent.components.notification.holder)
local Suggestions = require(script.Parent.components.commandbar.suggestions)

-- < Variables >
local Children = Fusion.Children
local ForPairs = Fusion.ForPairs
local New = Fusion.New

-- < Component >
return function(parent)
	return New("ScreenGui")({
		Name = HttpService:GenerateGUID(false),
		DisplayOrder = 100,
		IgnoreGuiInset = true,
		ScreenInsets = Enum.ScreenInsets.DeviceSafeInsets,
		ResetOnSpawn = false,
		ZIndexBehavior = Enum.ZIndexBehavior.Sibling,
		Parent = parent,

		[Children] = {
			Bar(),
			Suggestions(),
			NotificationHolder(),

			ForPairs(States.Objects, function(index, value)
				return index, value
			end, Fusion.cleanup),
		},
	})
end
