(
message: str,
*,
title: str,
level: str,
status_code: int = 200,
)
| 115 | |
| 116 | |
| 117 | def _build_alert( |
| 118 | message: str, |
| 119 | *, |
| 120 | title: str, |
| 121 | level: str, |
| 122 | status_code: int = 200, |
| 123 | ) -> HTMLResponse: |
| 124 | level_classes = { |
| 125 | "success": "bg-green-100 border-green-400 text-green-700", |
| 126 | "warning": "bg-yellow-100 border-yellow-400 text-yellow-700", |
| 127 | "error": "bg-red-100 border-red-400 text-red-700", |
| 128 | "info": "bg-blue-100 border-blue-400 text-blue-700", |
| 129 | } |
| 130 | classes = level_classes.get(level, level_classes["info"]) |
| 131 | safe_title = escape(title) |
| 132 | safe_message = escape(message) |
| 133 | return HTMLResponse( |
| 134 | f""" |
| 135 | <div class="{classes} border px-4 py-3 rounded relative" role="alert"> |
| 136 | <strong class="font-bold">{safe_title}</strong> |
| 137 | <span class="block sm:inline">{safe_message}</span> |
| 138 | </div> |
| 139 | """, |
| 140 | status_code=status_code, |
| 141 | ) |
| 142 | |
| 143 | |
| 144 | def _with_hx_trigger(response: HTMLResponse, event_name: str) -> HTMLResponse: |
no outgoing calls
no test coverage detected