{
  "definitions": {
    "events": {
      "$ref": "#/definitions/Events",
      "$schema": "http://json-schema.org/draft-07/schema#",
      "definitions": {
        "Events": {
          "additionalProperties": false,
          "properties": {
            "done": {
              "additionalProperties": false,
              "properties": {
                "id": {
                  "type": "string"
                },
                "schema": {}
              },
              "required": [
                "schema",
                "id"
              ],
              "type": "object"
            }
          },
          "required": [
            "done"
          ],
          "type": "object"
        }
      }
    },
    "component": {
      "$ref": "#/definitions/Component",
      "$schema": "http://json-schema.org/draft-07/schema#",
      "definitions": {
        "Component": {
          "additionalProperties": false,
          "properties": {
            "debug": {
              "type": "boolean"
            },
            "id": {
              "type": "string"
            },
            "output_schema": {
              "items": {},
              "type": "array"
            },
            "style": {
              "type": "string"
            }
          },
          "type": "object"
        }
      }
    }
  },
  "description": "Visual form-schema builder: internal `hb-form` defines field types, validation flags, and options, mirrored into an `hb-table` preview and editable via `hb-dialogform`. Accumulates `output_schema` as the composed `hb-form` schema array and can emit debug-oriented events for each sub-component interaction.",
  "storybookArgs": {
    "debug": {
      "control": {
        "type": "boolean"
      }
    },
    "output_schema": {
      "control": {
        "type": "object"
      }
    },
    "done": {
      "action": "doneEvent"
    }
  },
  "styleSetup": {
    "vars": [],
    "parts": []
  },
  "contributors": [],
  "htmlSlots": [],
  "i18n": [],
  "examples": [
    {
      "name": "default",
      "description": "Empty composer; build fields from the internal UI.",
      "data": {}
    },
    {
      "name": "debug",
      "description": "Verbose logging for sub-component wiring.",
      "data": {
        "debug": true
      }
    },
    {
      "name": "debug-default",
      "description": "Debug on with a one-field seed schema.",
      "data": {
        "debug": true,
        "output_schema": [
          {
            "id": "name",
            "conditional": false,
            "label": "Name",
            "max": 100,
            "min": 0,
            "required": true,
            "placeholder": "Enter your name",
            "type": "text",
            "value": "abbello"
          }
        ]
      }
    },
    {
      "name": "prefillMultiField",
      "description": "Several control types hydrated into the builder.",
      "data": {
        "output_schema": [
          {
            "label": "Email",
            "type": "email",
            "required": true,
            "placeholder": "you@example.com",
            "min": 0,
            "max": 254
          },
          {
            "label": "Age",
            "type": "number",
            "required": false,
            "min": 0,
            "max": 120
          },
          {
            "label": "Subscribe",
            "type": "checkbox",
            "required": false
          }
        ]
      }
    }
  ],
  "iifeIntegrity": "sha384-6PQNJkmjPFslkUIZg3vtXcEFxvaAlLVwThYuSa0l7G7jcVtVC1tYN37z/Twf2Byz",
  "dependencies": [
    {
      "name": "hb-form",
      "dependencies": [
        {
          "name": "hb-input-area",
          "dependencies": []
        },
        {
          "name": "hb-input-array-objects",
          "dependencies": [
            {
              "name": "hb-form",
              "dependencies": []
            },
            {
              "name": "hb-table",
              "dependencies": [
                {
                  "name": "hb-dialog",
                  "dependencies": []
                },
                {
                  "name": "hb-dialogform",
                  "dependencies": [
                    {
                      "name": "hb-dialog",
                      "dependencies": []
                    },
                    {
                      "name": "hb-form",
                      "dependencies": []
                    }
                  ]
                },
                {
                  "name": "hb-paginate",
                  "dependencies": [
                    {
                      "name": "hb-input-number",
                      "dependencies": []
                    },
                    {
                      "name": "hb-input-select",
                      "dependencies": []
                    }
                  ]
                },
                {
                  "name": "hb-tooltip",
                  "dependencies": []
                }
              ]
            }
          ]
        },
        {
          "name": "hb-input-array-tags",
          "dependencies": []
        },
        {
          "name": "hb-input-checkbox",
          "dependencies": []
        },
        {
          "name": "hb-input-color",
          "dependencies": []
        },
        {
          "name": "hb-input-coords",
          "dependencies": [
            {
              "name": "hb-input-number",
              "dependencies": []
            },
            {
              "name": "hb-map",
              "dependencies": []
            }
          ]
        },
        {
          "name": "hb-input-date",
          "dependencies": []
        },
        {
          "name": "hb-input-datetime",
          "dependencies": [
            {
              "name": "hb-input-date",
              "dependencies": []
            },
            {
              "name": "hb-input-number",
              "dependencies": []
            }
          ]
        },
        {
          "name": "hb-input-email",
          "dependencies": []
        },
        {
          "name": "hb-input-file",
          "dependencies": []
        },
        {
          "name": "hb-input-number",
          "dependencies": []
        },
        {
          "name": "hb-input-radio",
          "dependencies": []
        },
        {
          "name": "hb-input-range",
          "dependencies": []
        },
        {
          "name": "hb-input-select",
          "dependencies": []
        },
        {
          "name": "hb-input-text",
          "dependencies": []
        }
      ]
    },
    {
      "name": "hb-table",
      "dependencies": [
        {
          "name": "hb-dialog",
          "dependencies": []
        },
        {
          "name": "hb-dialogform",
          "dependencies": [
            {
              "name": "hb-dialog",
              "dependencies": []
            },
            {
              "name": "hb-form",
              "dependencies": [
                {
                  "name": "hb-input-area",
                  "dependencies": []
                },
                {
                  "name": "hb-input-array-objects",
                  "dependencies": [
                    {
                      "name": "hb-form",
                      "dependencies": []
                    },
                    {
                      "name": "hb-table",
                      "dependencies": []
                    }
                  ]
                },
                {
                  "name": "hb-input-array-tags",
                  "dependencies": []
                },
                {
                  "name": "hb-input-checkbox",
                  "dependencies": []
                },
                {
                  "name": "hb-input-color",
                  "dependencies": []
                },
                {
                  "name": "hb-input-coords",
                  "dependencies": [
                    {
                      "name": "hb-input-number",
                      "dependencies": []
                    },
                    {
                      "name": "hb-map",
                      "dependencies": []
                    }
                  ]
                },
                {
                  "name": "hb-input-date",
                  "dependencies": []
                },
                {
                  "name": "hb-input-datetime",
                  "dependencies": [
                    {
                      "name": "hb-input-date",
                      "dependencies": []
                    },
                    {
                      "name": "hb-input-number",
                      "dependencies": []
                    }
                  ]
                },
                {
                  "name": "hb-input-email",
                  "dependencies": []
                },
                {
                  "name": "hb-input-file",
                  "dependencies": []
                },
                {
                  "name": "hb-input-number",
                  "dependencies": []
                },
                {
                  "name": "hb-input-radio",
                  "dependencies": []
                },
                {
                  "name": "hb-input-range",
                  "dependencies": []
                },
                {
                  "name": "hb-input-select",
                  "dependencies": []
                },
                {
                  "name": "hb-input-text",
                  "dependencies": []
                }
              ]
            }
          ]
        },
        {
          "name": "hb-paginate",
          "dependencies": [
            {
              "name": "hb-input-number",
              "dependencies": []
            },
            {
              "name": "hb-input-select",
              "dependencies": []
            }
          ]
        },
        {
          "name": "hb-tooltip",
          "dependencies": []
        }
      ]
    },
    {
      "name": "hb-dialogform",
      "dependencies": [
        {
          "name": "hb-dialog",
          "dependencies": []
        },
        {
          "name": "hb-form",
          "dependencies": [
            {
              "name": "hb-input-area",
              "dependencies": []
            },
            {
              "name": "hb-input-array-objects",
              "dependencies": [
                {
                  "name": "hb-form",
                  "dependencies": []
                },
                {
                  "name": "hb-table",
                  "dependencies": [
                    {
                      "name": "hb-dialog",
                      "dependencies": []
                    },
                    {
                      "name": "hb-dialogform",
                      "dependencies": []
                    },
                    {
                      "name": "hb-paginate",
                      "dependencies": [
                        {
                          "name": "hb-input-number",
                          "dependencies": []
                        },
                        {
                          "name": "hb-input-select",
                          "dependencies": []
                        }
                      ]
                    },
                    {
                      "name": "hb-tooltip",
                      "dependencies": []
                    }
                  ]
                }
              ]
            },
            {
              "name": "hb-input-array-tags",
              "dependencies": []
            },
            {
              "name": "hb-input-checkbox",
              "dependencies": []
            },
            {
              "name": "hb-input-color",
              "dependencies": []
            },
            {
              "name": "hb-input-coords",
              "dependencies": [
                {
                  "name": "hb-input-number",
                  "dependencies": []
                },
                {
                  "name": "hb-map",
                  "dependencies": []
                }
              ]
            },
            {
              "name": "hb-input-date",
              "dependencies": []
            },
            {
              "name": "hb-input-datetime",
              "dependencies": [
                {
                  "name": "hb-input-date",
                  "dependencies": []
                },
                {
                  "name": "hb-input-number",
                  "dependencies": []
                }
              ]
            },
            {
              "name": "hb-input-email",
              "dependencies": []
            },
            {
              "name": "hb-input-file",
              "dependencies": []
            },
            {
              "name": "hb-input-number",
              "dependencies": []
            },
            {
              "name": "hb-input-radio",
              "dependencies": []
            },
            {
              "name": "hb-input-range",
              "dependencies": []
            },
            {
              "name": "hb-input-select",
              "dependencies": []
            },
            {
              "name": "hb-input-text",
              "dependencies": []
            }
          ]
        }
      ]
    }
  ],
  "screenshots": [],
  "licenses": [
    {
      "type": "Apache-2.0",
      "path": "LICENSE.md",
      "cost": 0,
      "currency": "EUR"
    }
  ],
  "readmePath": "README.md",
  "name": "hb-form-composer",
  "category": "forms",
  "tags": [
    "forms",
    "builder"
  ],
  "size": {},
  "iifePath": "main.iife.js",
  "repoName": "@htmlbricks/hb-form-composer",
  "version": "0.71.32"
}