Masks will be mandatory in some indoor areas, including shopping centres and on public transport, in Greater Sydney from midnight as NSW records seven new local coronavirus infections.