package base

type GridLayoutField struct {
	Uuid            string           `db:"uuid"`
	GridLayoutUuid  string           `db:"grid_layout_uuid"` // 所属布局 UUID
	Type            string           `db:"type"`
	X               int              `db:"x"`
	Y               int              `db:"y"`
	W               int              `db:"w"`
	H               int              `db:"h"`
	MinH            int              `db:"minH"`
	MinW            int              `db:"minW"`
	MaxH            int              `db:"maxH"`
	MaxW            int              `db:"maxW"`
	Code            string           `db:"code"`
	Label           string           `db:"label"`
	Widget          string           `db:"widget"`
	WidgetPerfix    string           `db:"widgetPerfix"`
	WidgetDecorator string           `db:"widgetDecorator"`
	SubWidgets      []map[string]any `db:"subWidgets"`
	InitialValue    string           `db:"initialValue"`
	Css             map[string]any   `db:"css"`
	Extras          map[string]any   `db:"extras"`
	Hidden          bool             `db:"hidden"`
	IsVirtual       bool             `db:"isVirtual"`
	UpdatedAt       string           `db:"updated_at"`
	CreatedAt       string           `db:"created_at"`
}

type GetGridLayoutFields func(uuid string) []GridLayoutField