[joj] Rewrite and add support for generic embeds (closes #13268)