# XWUIBarSiteFooter

Reusable site footer: brand block (logo + tagline), N link columns (a column with no `title` renders as a flat, heading-less row), an optional social-links row, an optional newsletter subscribe form, and an optional bottom strip with left/right text.

## Updating data

`updateData(patch)` merges the patch and repaints - always safe, since this component has no slotted content to protect (unlike `XWUIBarSiteHeader`). `getElement()` gives direct access to the rendered `<footer>` root.

## Migrating from XWUILayoutFooter

`XWUILayoutFooter` (the old 5-block variant footer) is deprecated and now a thin alias backed by this component - the mapping is lossless: `copyright` maps onto `bottom.left`, a flat `links` row maps onto a title-less `columns` entry, and `columns`/`socialLinks`/`newsletterLabel`/`newsletterPlaceholder`/`newsletterSubmitLabel` map onto their same-shaped equivalents here (`columns`, `socialLinks`, `newsletter`). Existing `<xwui-layout-footer>` markup keeps working; switch to `<xwui-bar-site-footer>` for full control (real CSS, theming, accessibility, safe external-link handling).

## Basic Usage

Empty footer with default config.

```example
file: examples/BasicUsage.ts
html: examples/BasicUsage.html
title: Basic Usage
description: Empty footer with default config.
```

## Brand With Columns

Marketing-site footer: brand on the left, three link columns (Product / Company / Resources).

```example
file: examples/BrandWithColumns.ts
html: examples/BrandWithColumns.html
title: Brand With Columns
description: Marketing-site footer: brand on the left, three link columns (Product / Company / Resources).
```

## With Bottom Strip

Copyright on the left, secondary text on the right.

```example
file: examples/WithBottomStrip.ts
html: examples/WithBottomStrip.html
title: With Bottom Strip
description: Copyright on the left, secondary text on the right.
```

## Bordered

Adds a top border to visually separate the footer from page content.

```example
file: examples/Bordered.ts
html: examples/Bordered.html
title: Bordered
description: Adds a top border to visually separate the footer from page content.
```

## Newsletter

`data.newsletter` renders a working subscribe form; submitting dispatches `xwui-newsletter-submit` (`detail: { email }`) instead of posting anywhere.

```example
file: examples/Newsletter.ts
html: examples/Newsletter.html
title: Newsletter
description: data.newsletter renders a working subscribe form; submitting dispatches xwui-newsletter-submit.
```

## With Social Links

`data.socialLinks` renders an icon-link row (always opens in a new tab); a title-less column renders as a flat link row.

```example
file: examples/WithSocialLinks.ts
html: examples/WithSocialLinks.html
title: With Social Links
description: data.socialLinks renders an icon-link row; a title-less column renders as a flat link row.
```

## Showcase

Flagship demo: full marketing footer, columns-only, external links, bottom-strip-only, bordered vs borderless.

```example
file: examples/Showcase.ts
html: examples/Showcase.html
title: Showcase
description: Full marketing footer, columns-only, external links, bottom-strip-only, bordered vs borderless.
```

```api
```
