[X] I have added tests that prove my fix is effective or that my feature works.
Description
Add categories to the service catalog.
The service catalog will display on its first page the items without categories + the root categories + the items inside the root categories.
If there are sub categories inside the root categories, they are also displayed but without their content (thus we display only 2 levels on the service catalog at a time).
Right now we only use categories and form in the tree but we are very likely to display other data later on (like FAQ articles) so I've made the design generic using the standard leaf/composite pattern.
This increased the size of these changes as it required a bit more interface/provider to set up the code but hopefully it should make it simple to add new item types to the tree later on.
Breadcrumbs will be added later (so if you enter a category you can't back out currently).
Checklist before requesting a review
Description
Add categories to the service catalog. The service catalog will display on its first page the items without categories + the root categories + the items inside the root categories.
If there are sub categories inside the root categories, they are also displayed but without their content (thus we display only 2 levels on the service catalog at a time).
Right now we only use categories and form in the tree but we are very likely to display other data later on (like FAQ articles) so I've made the design generic using the standard leaf/composite pattern. This increased the size of these changes as it required a bit more interface/provider to set up the code but hopefully it should make it simple to add new item types to the tree later on.
Breadcrumbs will be added later (so if you enter a category you can't back out currently).
Screenshots :