[TASK] Add PreviewView and deprecate flux:widget.grid

Both HEREDOC + inline variables are strongly discouraged. Suggested alternative: string concatenation and single-quoted strings, or array and return implode(LF).