Apicurio / apicurio-ux-design

Track design work for the Apicurio UI/UX.
Apache License 2.0
0 stars 0 forks source link

Paramaters Inheritance UI Explorations #33

Open Mgranfie opened 5 years ago

Mgranfie commented 5 years ago

As a user I want to be able to identify and understand the state of a query or path parameter.

API INFO AREA Operations show that they are inherited. ○ Operations Path Parameters ○ CANNOT add Path Parameters (to path or an operation?), these are only inherited. ○ CAN add Query Parameters ○ Cannot remove a path parameter from an operation. These can be overridden.

@EricWittmann can you review these requirements for me. Feel free to edit if needed.

Mgranfie commented 5 years ago

States as specified by Eric:

Possible states for path parameters:

This results in the following "states":

  1. Missing
  2. Defined
  3. Inherited
  4. Overridden States 3 and 4 are only possible for path parameters at the Operation level Query Parameters are the same, with the exception of the "missing" concept - query parameters cannot be "missing"
Mgranfie commented 5 years ago

Missing = Not defined Defined = Created Inherited = Defined at the API Path level, and only possible at the Operation level Overridden = Defined at the API Path level, and only possible at the Operation level

Mgranfie commented 5 years ago

The UI for the parameter inheritance should represent the states, as follows:

Not Defined

• Path Level 
    ○ NO ICON 
    ○ Text Disabled 
    ○ Command to Create Definition/Define

• Operation Level 
    ○ NO ICON
    ○ Text Disabled
    ○ Command to Create Definition/Define  (If the parameter has not been created at the path level)

Defined

• Path Level
    ○ NO ICON
    ○ Text Enabled
    ○ Command to Not Use

• Operation Level
    ○ ICON indicators
        * ICON - Inherited (Defined at the Global/API level, and only possible at the Operation level)
            □ Command to Create (If the parameter has not been created at the path level)
        * ICON - Overridden  (Defined at the Global/API level, and only possible at the Operation level)
    ○ Text Enabled
Mgranfie commented 5 years ago

Final designs located here