Current section

Files

Jump to
noora components banner.json
Raw

components/banner.json

{
"name": "Banner",
"tagName": "noora-banner",
"elementClassName": "NooraBanner",
"className": "noora-banner",
"modulePath": "./priv/static/noora-web-components.js",
"description": "Displays a page-level message with an optional dismiss action.",
"usage": "<noora-banner status=\"success\" title=\"Changes saved\"></noora-banner>",
"attributes": [
{
"name": "status",
"property": "status",
"type": "string",
"values": ["primary", "error", "success", "warning", "information"],
"default": "primary",
"description": "Sets the semantic status."
},
{
"name": "title",
"property": "title",
"type": "string",
"default": "",
"description": "Sets the banner title."
},
{
"name": "description",
"property": "description",
"type": "string",
"description": "Sets the optional description."
},
{
"name": "dismissible",
"property": "dismissible",
"type": "boolean",
"default": false,
"description": "Shows a dismiss control."
}
],
"readonlyProperties": [],
"slots": [
{
"name": "icon",
"description": "A custom icon used by primary banners."
}
],
"cssParts": [
{
"name": "banner",
"description": "The banner container."
},
{
"name": "title",
"description": "The title."
},
{
"name": "description",
"description": "The description."
}
],
"events": [
{
"name": "noora-dismiss",
"type": "CustomEvent<Record<string, never>>",
"description": "Emitted after the banner is dismissed."
}
],
"notes": [
"A dismiss action emits a `noora-dismiss` event and hides the element."
],
"examples": [
{
"id": "statuses",
"title": "Statuses",
"description": "Banners support primary, error, success, warning, and information states.",
"markup": "<noora-banner status=\"primary\" title=\"Primary status\" description=\"I am a primary banner\"></noora-banner>\n<noora-banner status=\"error\" title=\"Error status\" description=\"I am an error banner\"></noora-banner>\n<noora-banner status=\"success\" title=\"Success status\" description=\"I am a success banner\"></noora-banner>\n<noora-banner status=\"warning\" title=\"Warning status\" description=\"I am a warning banner\"></noora-banner>\n<noora-banner status=\"information\" title=\"Information status\" description=\"I am an information banner\"></noora-banner>"
},
{
"id": "custom-icon",
"title": "Custom icon",
"description": "Primary banners accept a custom icon through the icon slot.",
"markup": "<noora-banner status=\"primary\" title=\"Primary status\" description=\"I am a primary banner with a custom icon\">\n <noora-icon slot=\"icon\" name=\"alert_circle\"></noora-icon>\n</noora-banner>"
},
{
"id": "content-variations",
"title": "Content variations",
"description": "Descriptions are optional, banners can be dismissible, and long content wraps.",
"markup": "<noora-banner status=\"primary\" title=\"Title only banner\"></noora-banner>\n<noora-banner dismissible status=\"warning\" title=\"Dismissible banner\" description=\"This banner can be dismissed by the user\"></noora-banner>\n<noora-banner status=\"information\" title=\"Banner with longer content\" description=\"This is a banner with much longer descriptive text that demonstrates how the component handles multiple lines of content and text wrapping behavior\"></noora-banner>"
}
]
}