Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Form Schema JSON Capabilities - Expandable Array Sections #93

Open
mkormendy opened this issue Jul 20, 2021 · 0 comments
Open

Form Schema JSON Capabilities - Expandable Array Sections #93

mkormendy opened this issue Jul 20, 2021 · 0 comments

Comments

@mkormendy
Copy link

As a user, I am noticing a number of features that are not in parity with the native Homebridge implementation of the config.schema.json for the form based configuration user interface.

This issue deals with missing altogether collapsibility of user-definable array sections (where they can add as many sections as limited or not). In certain cases, the "expandable": true feature works, however it seems to break when it comes to dealing with user-add-remove sections as defined by this code:

"panels": {
  "title": "Panels",
  "description": "These are the individual Konnected Alarm Panel module boards.",
  "type": "array",
  "orderable": true,
  "expandable": true,
  "expanded": true,
  "items": {
    "type": "object",
    "properties": {
      "name": {
        "title": "Panel Name",
        "type": "string"
      },
      "uuid": {
        "title": "UUID",
        "type": "string",
        "readonly": true
      },
      "ipAddress": {
        "title": "IP Address (required but changeable)",
        "type": "string",
        "format": "ipv4"
      },
      "port": {
        "title": "Port (required but changeable)",
        "type": "number",
        "step": 1,
        "minimum": 1000,
        "maximum": 65535
      },
      "blink": {
        "title": "Blink panel LED when zones change/report their state.",
        "type": "boolean",
        "default": true
      }
    }
  }
}

In Homebridge, this section of items is collapsible, by default or by user interaction. The benefits of being able to collapse this section or nested sections like this are to reduce cognitive debt when managing 3-4 items or more. Makes it less confusing to the user and helps with managing multiple devices, etc.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant