{
  "$schema": "https://schemas.wp.org/trunk/block.json",
  "apiVersion": 3,
  "name": "wedocs/table-of-contents",
  "version": "0.1.0",
  "title": "weDocs Dynamic Table of Contents",
  "category": "wedocs",
  "icon": "list-view",
  "description": "Auto-generates a dynamic Table of Contents from selected heading levels with collapsible, numbered, and hierarchical list options.",
  "example": {
    "attributes": {
      "tocTitle": "Table of Contents",
      "supportedHeadings": [
        "h2",
        "h3"
      ],
      "showHierarchy": true,
      "showNumbering": false
    }
  },
  "supports": {
    "html": false,
    "anchor": true,
    "align": [
      "wide",
      "full"
    ],
    "color": {
      "background": true,
      "text": true,
      "link": true,
      "__experimentalDefaultControls": {
        "background": true,
        "text": true
      }
    },
    "typography": {
      "fontSize": true,
      "lineHeight": true,
      "__experimentalFontFamily": true,
      "__experimentalFontWeight": true,
      "__experimentalDefaultControls": {
        "fontSize": true
      }
    },
    "spacing": {
      "margin": true,
      "padding": true,
      "blockGap": true,
      "__experimentalDefaultControls": {
        "padding": true,
        "margin": true
      }
    },
    "__experimentalBorder": {
      "color": true,
      "radius": true,
      "style": true,
      "width": true,
      "__experimentalDefaultControls": {
        "color": true,
        "radius": true
      }
    }
  },
  "attributes": {
    "blockId": {
      "type": "string",
      "default": ""
    },
    "colorsControls": {
      "type": "object",
      "default": {
        "desktop": {
          "textColor": "#000000",
          "backgroundColor": "#ffffff",
          "linkColor": "#000000",
          "linkHoverColor": "#000000"
        }
      }
    },
    "tocTitle": {
      "type": "string",
      "default": "Table of Contents"
    },
    "supportedHeadings": {
      "type": "array",
      "default": [
        "h2",
        "h3"
      ]
    },
    "showHierarchy": {
      "type": "boolean",
      "default": true
    },
    "showNumbering": {
      "type": "boolean",
      "default": false
    },
    "collapsibleOnMobile": {
      "type": "boolean",
      "default": true
    },
    "containerBackgroundColor": {
      "type": "string"
    },
    "containerWidth": {
      "type": "string",
      "default": "100%"
    },
    "containerPadding": {
      "type": "object",
      "default": {
        "top": "20px",
        "right": "20px",
        "bottom": "20px",
        "left": "20px"
      }
    },
    "containerMargin": {
      "type": "object",
      "default": {
        "top": "0px",
        "right": "0px",
        "bottom": "20px",
        "left": "0px"
      }
    },
    "containerBorderStyle": {
      "type": "string",
      "default": "solid"
    },
    "containerBorderWidth": {
      "type": "string",
      "default": "1px"
    },
    "containerBorderColor": {
      "type": "string",
      "default": "#e0e0e0"
    },
    "containerBorderRadius": {
      "type": "string",
      "default": "5px"
    },
    "titleColor": {
      "type": "string"
    },
    "titleFontSize": {
      "type": "string",
      "default": "18px"
    },
    "titleFontWeight": {
      "type": "string",
      "default": "600"
    },
    "titlePadding": {
      "type": "object",
      "default": {
        "top": "0px",
        "right": "0px",
        "bottom": "15px",
        "left": "0px"
      }
    },
    "listColor": {
      "type": "string"
    },
    "listHoverColor": {
      "type": "string"
    },
    "listFontSize": {
      "type": "string",
      "default": "14px"
    },
    "smoothScroll": {
      "type": "boolean",
      "default": true
    },
    "stickyMode": {
      "type": "boolean",
      "default": false
    },
    "additionalCssClass": {
      "type": "string",
      "default": ""
    }
  },
  "textdomain": "wedocs",
  "editorScript": "file:./index.js",
  "editorStyle": "file:./index.css",
  "style": "file:./style-index.css",
  "viewScript": "file:./view.js",
  "render": "file:./render.php"
}