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"`
	WidgetPrefix         string           `db:"widgetPrefix"`
	WidgetDecorator      string           `db:"widgetDecorator"`
	SubWidgets           []map[string]any `db:"subWidgets"`
	ConvertJs            string           `db:"convertJs"`
	ConvertJsSetting     map[string]any   `db:"convertJsSetting"`
	Extras               map[string]any   `db:"extras"`
	IsVirtual            bool             `db:"isVirtual"`
	InitialValue         string           `db:"initialValue"`
	InitialValueLanguage string           `db:"initialValueLanguage"`
	UpdatedAt            string           `db:"updated_at"`
	CreatedAt            string           `db:"created_at"`
}

type GetGridLayoutFields func(uuid string) []GridLayoutField