{% extends base_template %} {% comment %} The desk screen: the queue on the left, one conversation on the right, and a single WebSocket underneath both. Written as one page of plain JavaScript with no build step, for the same reason the socket is written against ASGI rather than Channels: the whole thing is a connection, a dispatch table and a renderer, and a bundler would be a second toolchain to install before an agent can answer a message. Nothing here posts a form -- every action is a command on apps/support/sockets.py, so this screen and a customer's chat widget exercise the same protocol. **The styling is this page's own, not the theme's utility classes.** Unfold ships a *compiled* Tailwind stylesheet, which holds the utilities Unfold itself uses and nothing else: a class it never compiled -- `dark:bg-base-800` is in there, `dark:bg-primary-500/10` is not -- does not fail, it is simply absent, so the element keeps whatever the light rule said and a selected row becomes white text on a white block in the dark theme, with nothing in the console to say so. The rules below are therefore written here, against the theme's CSS *variables*, which are a published surface and fall back to a readable default in a project that has no theme at all. `base_template` is the theme's layout where the project has one and the plain admin's where it does not, exactly as the CMS content screen does it. {% endcomment %} {% load i18n %} {% block title %}{{ title }} | {{ site_title }}{% endblock %} {% block extrastyle %} {{ block.super }} {% endblock %} {% block content %} {{ config|json_script:"desk-config" }}
{% trans "Pick a conversation on the left." %}