Product applications
Confirm
A finished page under Kiln. Copy it and it is yours outright: unlike a brickwork component or shell, it never upgrades under semver.
Scroll inside the frame to inspect the full page.
{% extends "brickwork/shell/centred.html" %}
{% comment %}
A destructive-action confirmation screen.
COPY THIS FILE into your project and edit it. It is not on the template loader
path, so you cannot extend it (ADR-056).
This one extends the CENTRED shell, not the app shell: a confirmation is a
deliberate interruption, so it drops the sidebar and topbar rather than letting
the user carry on navigating mid-decision.
Name exactly what is about to happen and to what. "Are you sure?" is not a
confirmation, it is a speed bump. The example below names the record and states
what is irreversible.
No JS is involved: the confirm is a POST form and the cancel is a link. If you
would rather confirm in a modal, copy examples/sections/modal/confirm.html (the
`#bw-modal-root` consumer partial) and keep a real URL like this behind it so
the action still works without JS. That modal journey documents the open
one-liner and the HX-Trigger close header.
States: none: a static page, no open/closed or hover-driven state beyond
the composed _alert.html and bw_button controls' own states.
Accessibility: inherits shell/centred.html's skip link, lang/dir/theme
attributes and <main id="bw-main" tabindex="-1">; the warning alert
names the destructive action in words (role="alert"), never colour
alone. Covered by the archetype harness's full gate sweep (render, axe
WCAG 2.2 AA, no horizontal overflow, light/dark distinctness, skip-link
first-tab-stop with JS disabled) at every W0.1 breakpoint, both themes.
Responsive: no breakpoint switch of its own; inherits shell/centred.html's
fluid, no-breakpoint centred panel.
{% endcomment %}
{% load brickwork_components %}
{% block page_title %}Delete project - Northwind{% endblock %}
{% block content %}
<div class="bw-section-stack">
{% include "brickwork/components/_alert.html" with variant="warning" title="Delete the Q3 Migration project?" message="This deletes the project, its 47 tasks, and their attachments. It cannot be undone." %}
{% comment %}
The destructive action is a POST, never a link: a GET that deletes something
will eventually be triggered by a crawler or a prefetch. Cancel is a plain
anchor back to where the user came from.
{% endcomment %}
<div class="bw-form__actions">
<form method="post" action="{{ request.path }}">
{% csrf_token %}
{% bw_button "Delete project" type="submit" variant="danger" %}
</form>
{% bw_button "Cancel" variant="ghost" href="/projects/q3-migration/" %}
</div>
</div>
{% endblock %}
Details
| Kind | Page example |
|---|---|
| Used in | Product applications |
Composed from
| Template | Description |
|---|---|
brickwork/components/_alert.html |
A full-width banner for page-level status and errors. |
brickwork/components/_button.html |
A button or link styled as a button, in several variants. |
brickwork/shell/centred.html |
A centred single-column shell for a focused page. |