Refactor pages with ComponentResource