{% extends "brickwork/shell/centred.html" %} {% comment %} Confirm page (page-templates kit, v1.1.0): a destructive-action confirmation screen (delete, archive, revoke), deliberately outside the app shell's sidebar/topbar chrome, so extends shell/centred.html, not shell/app.html. A consuming page EXTENDS this template, never includes it. Blocks (semver-public, BR-BW-TPL-001): confirm_body default: empty. The explanatory message, typically _alert.html's warning or danger variant naming exactly what is about to happen and to what: {% block confirm_body %} {% include "brickwork/components/_alert.html" with variant="warning" title="Delete this project?" message="This cannot be undone." %} {% endblock %} confirm_actions default: empty. The consumer's own POST
with a submit button, plus a plain cancel link: {% block confirm_actions %} {% csrf_token %} {% load brickwork_components %} {% bw_button label="Delete" type="submit" variant="danger" %}
{% bw_button label="Cancel" href=cancel_url variant="ghost" %} {% endblock %} Both blocks are empty by default because brickwork ships no view/model, so it cannot know the action's own copy, URL, or method target (mirroring the auth pages' BR-BW-PAGE-003 discipline for the same reason). Composes: _alert.html, {% bw_button %}. No-JS floor: a POST
plus an ordinary cancel link, zero JS required to confirm or cancel. Required context: none. shell/centred.html carries only a content block (no page_header region, unlike the app-shell patterns), so a confirm screen is heading-led via confirm_body itself: put the title inside that block's own markup (e.g. _alert.html's title=, or a plain heading above it). {% endcomment %} {% block content %}
{% block confirm_body %}{% endblock %} {% block confirm_actions %}{% endblock %}
{% endblock %}