Problem/Motivation
The JSON API module exposes all content and config entities by default but this is not really obvious in our current UI (see below). It is difficult for a user to see which resources are available.
At a glance, the table above might convey the impression that this is all the resources enabled on the site.
Proposed resolution
The patch attached explores an idea where all resources are presented to the user.
The status (enabled or disabled) of each resource is displayed, along with the state: default or overwritten.
Links to overwrite, edit or revert resource configs are available.
This should also make it easier for the user to understand that JSON API Extras is meant to overwrite resources and not for building the API.
Let's discuss.
Note: This has been put together to show a proof of concept. The code definitely needs clean up :)
Remaining tasks
User interface changes
API changes
Data model changes
| Comment | File | Size | Author |
|---|---|---|---|
| #7 | Edit block_content_type--block_content_type resource config | D8 Dev 2017-05-06 19-53-16.png | 180.52 KB | e0ipso |
| #2 | feature_explore_ideas-2876239-2.patch | 20.14 KB | shadcn |
| JSON_API_Resource_Config___Drush_Site-Install.png | 225.79 KB | shadcn |


Comments
Comment #2
shadcn commentedComment #3
shadcn commentedComment #4
e0ipsoOMG! I LOVE THIS. Yes! More of these, please.
I'm committing this right away. Feel free to reopen the issue for the clean up that you're mentioning.
Comment #6
e0ipsoComment #7
e0ipsoOn the next iteration we could aim to something like:
That way we don't break the UI if the enhancer form is big, so we move the enhancer (and any other options in the future) to a new row. In the new row the Enhancer form can have a colspan="3" (caption is not doing that, but you get the idea).
@arshadcn feel free to adapt the wording, design and the whole idea.
This issue is THE issue. Thanks so much @arshadcn for taking the lead on this.
Comment #8
shadcn commented@e0ipso can we create a separate issue for #7 please?
Comment #9
e0ipsoMakes sense.