sync-component macro to avoid creating top group view