{
  "definitions": {
    "events": {
      "$ref": "#/definitions/Events",
      "$schema": "http://json-schema.org/draft-07/schema#",
      "definitions": {
        "Events": {
          "additionalProperties": false,
          "type": "object"
        }
      }
    },
    "component": {
      "$ref": "#/definitions/Component",
      "$schema": "http://json-schema.org/draft-07/schema#",
      "definitions": {
        "Component": {
          "additionalProperties": false,
          "properties": {
            "filter": {
              "type": "string"
            },
            "id": {
              "type": "string"
            },
            "info": {
              "anyOf": [
                {
                  "type": "string"
                },
                {
                  "items": {
                    "$ref": "#/definitions/FaqInfoItem"
                  },
                  "type": "array"
                }
              ],
              "description": "From HTML this is a JSON string; `$effect` parses it into `FaqInfoItem[]`."
            },
            "style": {
              "type": "string"
            },
            "topics": {
              "anyOf": [
                {
                  "type": "string"
                },
                {
                  "items": {
                    "$ref": "#/definitions/FaqTopicChip"
                  },
                  "type": "array"
                }
              ],
              "description": "From HTML this is a JSON string; `$effect` parses it into `FaqTopicChip[]` and assigns `index`."
            }
          },
          "type": "object"
        },
        "FaqInfoItem": {
          "additionalProperties": false,
          "properties": {
            "text": {
              "type": "string"
            },
            "title": {
              "type": "string"
            },
            "topic": {
              "type": "string"
            }
          },
          "required": [
            "title",
            "text"
          ],
          "type": "object"
        },
        "FaqTopicChip": {
          "additionalProperties": false,
          "properties": {
            "catchAll": {
              "type": "boolean"
            },
            "icon": {
              "type": "string"
            },
            "index": {
              "type": "number"
            },
            "key": {
              "type": "string"
            },
            "label": {
              "type": "string"
            }
          },
          "required": [
            "key",
            "label",
            "icon"
          ],
          "type": "object"
        }
      }
    }
  },
  "description": "FAQ layout with a horizontal topic strip (Bootstrap Icons + labels) that sets an optional `filter` key, and an accordion list built from JSON `info` entries (`title`, `topic`, HTML `text`). Checkbox hack expands/collapses answers; topics with `catchAll` clear the filter.",
  "storybookArgs": {
    "info": {
      "control": {
        "type": "object"
      }
    },
    "topics": {
      "control": {
        "type": "object"
      }
    },
    "filter": {
      "control": {
        "type": "text"
      }
    }
  },
  "styleSetup": {
    "vars": [
      {
        "name": "--bulma-column-gap",
        "valueType": "number",
        "defaultValue": "0.75rem",
        "description": "Gap between topic buttons in the horizontal strip."
      },
      {
        "name": "--bulma-block-spacing",
        "valueType": "number",
        "defaultValue": "1rem",
        "description": "Vertical padding for each FAQ row."
      },
      {
        "name": "--bulma-border",
        "valueType": "color",
        "defaultValue": "#dbdbdb",
        "description": "Dotted divider between accordion items."
      },
      {
        "name": "--bulma-text",
        "valueType": "color",
        "defaultValue": "#363636",
        "description": "Color of the expand “+” affordance."
      },
      {
        "name": "--bulma-size-4",
        "valueType": "text",
        "defaultValue": "",
        "description": "Font size for question labels."
      },
      {
        "name": "--bulma-size-5",
        "valueType": "text",
        "defaultValue": "",
        "description": "Font size for answer body text."
      }
    ],
    "parts": []
  },
  "contributors": [],
  "htmlSlots": [],
  "i18n": [],
  "examples": [
    {
      "name": "default",
      "description": "Several topics plus a catch-all filter reset.",
      "data": {
        "info": [
          {
            "topic": "test",
            "title": "test title",
            "text": "text <a href=\"ss\">ddd</a>text"
          },
          {
            "topic": "test2",
            "title": "test title2",
            "text": "text <a href=\"ss\">ddd</a>text"
          },
          {
            "topic": "test3",
            "title": "test title3",
            "text": "text <a href=\"ss\">ddd</a>text"
          }
        ],
        "topics": [
          {
            "key": "test",
            "label": "test label",
            "icon": "globe"
          },
          {
            "key": "test2",
            "label": "test2 label",
            "icon": "asterisk"
          },
          {
            "key": "test3",
            "label": "test3 label",
            "icon": "globe"
          },
          {
            "key": "test4",
            "label": "test4 label",
            "icon": "globe",
            "catchAll": true
          }
        ]
      }
    },
    {
      "name": "minimal",
      "description": "One topic and one question for embeds.",
      "data": {
        "info": [
          {
            "topic": "general",
            "title": "What is this?",
            "text": "<p>Short <strong>HTML</strong> answer.</p>"
          }
        ],
        "topics": [
          {
            "key": "general",
            "label": "General",
            "icon": "question-circle"
          }
        ]
      }
    },
    {
      "name": "prefiltered",
      "description": "Initial topic selection via `filter`.",
      "data": {
        "info": [
          {
            "topic": "test",
            "title": "test title",
            "text": "text <a href=\"ss\">ddd</a>text"
          },
          {
            "topic": "test2",
            "title": "test title2",
            "text": "text <a href=\"ss\">ddd</a>text"
          },
          {
            "topic": "test3",
            "title": "test title3",
            "text": "text <a href=\"ss\">ddd</a>text"
          }
        ],
        "topics": [
          {
            "key": "test",
            "label": "test label",
            "icon": "globe"
          },
          {
            "key": "test2",
            "label": "test2 label",
            "icon": "asterisk"
          },
          {
            "key": "test3",
            "label": "test3 label",
            "icon": "globe"
          },
          {
            "key": "test4",
            "label": "test4 label",
            "icon": "globe",
            "catchAll": true
          }
        ],
        "filter": "test2"
      }
    },
    {
      "name": "catchAllOnly",
      "description": "Single “All topics” chip that clears filtering.",
      "data": {
        "info": [
          {
            "topic": "test",
            "title": "test title",
            "text": "text <a href=\"ss\">ddd</a>text"
          },
          {
            "topic": "test2",
            "title": "test title2",
            "text": "text <a href=\"ss\">ddd</a>text"
          },
          {
            "topic": "test3",
            "title": "test title3",
            "text": "text <a href=\"ss\">ddd</a>text"
          }
        ],
        "topics": [
          {
            "key": "all",
            "label": "All",
            "icon": "grid",
            "catchAll": true
          }
        ]
      }
    }
  ],
  "iifeIntegrity": "sha384-JYcddau317QJSDQK1jX/hXUib2wQPX81bezGo5TujdfugxQ4gqZW8Bx9roPmbaxq",
  "dependencies": [],
  "screenshots": [],
  "licenses": [
    {
      "type": "Apache-2.0",
      "path": "LICENSE.md",
      "cost": 0,
      "currency": "EUR"
    }
  ],
  "readmePath": "README.md",
  "name": "hb-faq-component",
  "category": "content",
  "tags": [
    "content"
  ],
  "size": {},
  "iifePath": "main.iife.js",
  "repoName": "@htmlbricks/hb-faq-component",
  "version": "0.76.5"
}