{
  "definitions": {
    "events": {
      "$ref": "#/definitions/Events",
      "$schema": "http://json-schema.org/draft-07/schema#",
      "definitions": {
        "Events": {
          "additionalProperties": false,
          "properties": {
            "acceptCookieLaw": {
              "additionalProperties": false,
              "properties": {
                "accepted": {
                  "enum": [
                    "yes",
                    "no"
                  ],
                  "type": "string"
                }
              },
              "required": [
                "accepted"
              ],
              "type": "object"
            }
          },
          "required": [
            "acceptCookieLaw"
          ],
          "type": "object"
        }
      }
    },
    "component": {
      "$ref": "#/definitions/Component",
      "$schema": "http://json-schema.org/draft-07/schema#",
      "definitions": {
        "Component": {
          "additionalProperties": false,
          "properties": {
            "allowdecline": {
              "enum": [
                "yes",
                "no"
              ],
              "type": "string"
            },
            "capabilities": {
              "$ref": "#/definitions/ICapabilities"
            },
            "cookielawuri4more": {
              "type": "string"
            },
            "i18nlang": {
              "type": "string"
            },
            "id": {
              "type": "string"
            },
            "style": {
              "type": "string"
            }
          },
          "type": "object"
        },
        "ICapabilities": {
          "additionalProperties": false,
          "properties": {
            "groups": {
              "items": {
                "additionalProperties": false,
                "properties": {
                  "_id": {
                    "type": "string"
                  },
                  "label": {
                    "type": "string"
                  },
                  "type": {
                    "type": "string"
                  }
                },
                "required": [
                  "_id",
                  "label",
                  "type"
                ],
                "type": "object"
              },
              "type": "array"
            },
            "items": {
              "items": {
                "additionalProperties": false,
                "properties": {
                  "_id": {
                    "type": "string"
                  },
                  "cookieExpirationInSeconds": {
                    "type": "number"
                  },
                  "cookieName": {
                    "type": "string"
                  },
                  "description": {
                    "type": "string"
                  },
                  "descriptionUrl": {
                    "type": "string"
                  },
                  "groupId": {
                    "type": "string"
                  },
                  "isMandatory": {
                    "type": "boolean"
                  },
                  "isMarketing": {
                    "type": "boolean"
                  },
                  "isSessionCookie": {
                    "type": "boolean"
                  },
                  "isTechnical": {
                    "type": "boolean"
                  },
                  "isThirdPartyOwned": {
                    "type": "boolean"
                  },
                  "scope": {
                    "type": "string"
                  },
                  "thirdCompanyName": {
                    "type": "string"
                  },
                  "title": {
                    "type": "string"
                  }
                },
                "required": [
                  "groupId",
                  "title",
                  "scope",
                  "_id",
                  "cookieName"
                ],
                "type": "object"
              },
              "type": "array"
            }
          },
          "required": [
            "groups",
            "items"
          ],
          "type": "object"
        }
      }
    }
  },
  "description": "Bootstrap alert cookie notice shown until the user chooses accept or decline; the choice is stored in `localStorage` under `cookielaw` so the banner stays hidden on return visits. Supports i18n via `i18nlang`, optional `cookielawuri4more` link, JSON `capabilities` for extended consent, slots to override title/text, and dispatches `acceptCookieLaw` with `{ accepted: boolean }`.",
  "storybookArgs": {
    "allowdecline": {
      "control": {
        "type": "boolean"
      }
    },
    "i18nlang": {
      "control": {
        "type": "text"
      }
    },
    "cookielawuri4more": {
      "control": {
        "type": "text"
      }
    },
    "capabilities": {
      "control": {
        "type": "object"
      }
    },
    "acceptCookieLaw": {
      "action": "acceptCookieLawEvent"
    }
  },
  "styleSetup": {
    "vars": [],
    "parts": []
  },
  "contributors": [],
  "htmlSlots": [
    {
      "name": "title",
      "description": ""
    },
    {
      "name": "text",
      "description": ""
    }
  ],
  "i18n": [
    {
      "lang": "it",
      "language": "italian"
    },
    {
      "lang": "en",
      "language": "english"
    }
  ],
  "examples": [
    {
      "name": "default",
      "description": "Accept and decline; choice is persisted in localStorage.",
      "data": {
        "allowdecline": "yes"
      }
    },
    {
      "name": "acceptOnly",
      "description": "No decline path—single acknowledge action.",
      "data": {
        "allowdecline": "no"
      }
    },
    {
      "name": "englishWithPolicyLink",
      "description": "English strings and a learn-more URL.",
      "data": {
        "allowdecline": "yes",
        "i18nlang": "en",
        "cookielawuri4more": "https://example.com/cookies"
      }
    },
    {
      "name": "withCapabilities",
      "description": "Structured consent groups for granular toggles.",
      "data": {
        "allowdecline": "yes",
        "capabilities": {
          "groups": [
            {
              "_id": "essential",
              "label": "Essential",
              "type": "technical"
            },
            {
              "_id": "marketing",
              "label": "Marketing",
              "type": "marketing"
            }
          ],
          "items": [
            {
              "groupId": "essential",
              "title": "Session cookie",
              "scope": "strictly_necessary",
              "_id": "sess-1",
              "cookieName": "session_id",
              "isTechnical": true,
              "isMandatory": true
            },
            {
              "groupId": "marketing",
              "title": "Analytics",
              "scope": "analytics",
              "_id": "mkt-1",
              "cookieName": "_ga",
              "isMarketing": true,
              "isThirdPartyOwned": true
            }
          ]
        }
      }
    }
  ],
  "iifeIntegrity": "sha384-cz0mBKmX1brAz+RAm0gZDMCiLJHlaQP3qX329M3Yt/PL+u0k/M87B7WoIPoSkFxh",
  "dependencies": [],
  "screenshots": [],
  "licenses": [
    {
      "type": "Apache-2.0",
      "path": "LICENSE.md",
      "cost": 0,
      "currency": "EUR"
    }
  ],
  "readmePath": "README.md",
  "name": "hb-cookie-law-banner",
  "category": "layout",
  "tags": [
    "layout",
    "compliance"
  ],
  "size": {
    "layout": "fullscreen"
  },
  "iifePath": "main.iife.js",
  "repoName": "@htmlbricks/hb-cookie-law-banner",
  "version": "0.71.32"
}