UNPKG

bentogreed

Version:

A lightweight, framework-agnostic library for generating bento grid layouts

20 lines (19 loc) 556 B
import { squarifiedLayout } from './squarified'; import { binaryLayout } from './binary'; /** * Strategy registry - makes it easy to add new algorithms */ const strategies = { squarified: squarifiedLayout, binary: binaryLayout, }; /** * Apply a layout strategy to tiles within a rectangle */ export function applyLayoutStrategy(strategy, tiles, rect, gutter = 0) { const layoutFn = strategies[strategy]; if (!layoutFn) { throw new Error(`Unknown layout strategy: ${strategy}`); } return layoutFn(tiles, rect, gutter); }