goobs-frontend
Version:
A comprehensive React-based libary for building modern web applications
34 lines • 1.74 kB
TypeScript
import { default as React, ElementType, ReactNode } from 'react';
export interface FieldGridProps extends React.HTMLAttributes<HTMLDivElement> {
/**
* Minimum column width fed to `minmax(min(100%, var(--fg-min)), 1fr)`.
* Default `'250px'` (matches the dominant ThothOS field cluster).
*/
minColWidth?: string;
/** CSS gap between cells. Default `clamp(12px, 3vw, 24px)`. */
gap?: string;
/**
* Underlying element. Default `'div'` with `role="group"`. `DetailGrid`
* renders this as `'dl'` for definition-list semantics — when `as` is not
* `'div'`, the implicit `role="group"` is dropped so the element keeps its
* own native role (e.g. a `<dl>` stays a description list).
*/
as?: ElementType;
children: ReactNode;
}
/**
* Responsive auto-fit field layout primitive: lays children out in a CSS grid
* whose column track is `repeat(auto-fit, minmax(min(100%, var(--fg-min)),
* 1fr))`, so the grid wraps to as many equal-width columns as fit and a
* single field on a narrow viewport spans the full row instead of clipping.
* `minColWidth` (default `'250px'`) and `gap` (default `'clamp(12px, 3vw,
* 24px)'`) feed the CSS module as custom properties. Renders a `<div
* role="group">` by default so assistive tech announces the cluster as one
* related set of controls (name it via `aria-label` / `aria-labelledby`
* forwarded through rest props); when `as` names another element (e.g.
* `'dl'` for DetailGrid) the implicit group role is dropped so the element
* keeps its native role.
*/
declare const FieldGrid: React.ForwardRefExoticComponent<FieldGridProps & React.RefAttributes<HTMLDivElement>>;
export default FieldGrid;
//# sourceMappingURL=index.d.ts.map