added preview and partial to action, abstracted rendering logic

added preview and partial to action, abstracted rendering logic:

- [ ] test coverage
- [ ] finish the code
- [ ] gather feedback for my changes
- [ ] submit changes to the documentation


| Q             | A
| ------------- | ---
| Bug fix?      | no
| New feature?  | yes
| Tests pass?   | none
| Fixed tickets | yes
| Doc           | none