local vide = require(script.Parent.Parent.Parent.Parent.vide) local theme = require(script.Parent.Parent.Parent.util.theme) local create = vide.create local read = vide.read type can = (() -> T) | T type Background = { position: can?, size: can?, anchorpoint: can?, automaticsize: can?, layoutorder: can?, zindex: can?, depth: can?, accent: can?, [number]: any } return function(props: Background) return create "Frame" { Position = props.position, Size = props.size or UDim2.fromScale(1, 1), AnchorPoint = props.anchorpoint, AutomaticSize = props.automaticsize, AutoLocalize = false, LayoutOrder = props.layoutorder, ZIndex = props.zindex, BackgroundColor3 = function() return if read(props.accent) then theme.acc[read(props.depth) or 0]() else theme.bg[read(props.depth) or 0]() end, unpack(props) } end