-- Compiled with roblox-ts v3.0.0 local function resolveGridColumns(containerWidth, options) local explicitColumns = options.columns if explicitColumns ~= nil and explicitColumns > 0 then return math.max(1, math.floor(explicitColumns)) end local minColumnWidth = options.minColumnWidth if minColumnWidth == nil or minColumnWidth <= 0 then return 1 end local _condition = options.columnGap if _condition == nil then _condition = 0 end local gap = math.max(0, _condition) local width = math.max(0, containerWidth) local withGap = width + gap local perColumn = minColumnWidth + gap if perColumn <= 0 then return 1 end return math.max(1, math.floor(withGap / perColumn)) end local function resolveGridCellWidth(containerWidth, columns, columnGap) local safeColumns = math.max(1, math.floor(columns)) local safeGap = math.max(0, columnGap) local availableWidth = math.max(0, containerWidth - safeGap * (safeColumns - 1)) return math.max(1, math.floor(availableWidth / safeColumns)) end return { resolveGridColumns = resolveGridColumns, resolveGridCellWidth = resolveGridCellWidth, }