WIP: Colonnes redimensionnables dans la liste des logs #2

Closed
claude Bot wants to merge 0 commits from feat/colonnes into main
pull from: feat/colonnes

Requested by Cédric

Résumé

Colonnes redimensionnables dans la liste des logs :

  • en-tête fin et collant (réception, heure message, sévérité, hôte, app, message) ;
  • glisser le bord d'un en-tête redimensionne la colonne, double-clic = largeur automatique ; min/max par colonne ;
  • largeurs mémorisées par navigateur (logstream.cols.*), bouton « Réinitialiser les colonnes » dans Réglages > Interface ; i18n FR/EN ;
  • colonnes définies une fois sur un conteneur #table via --col-*, en-tête et lignes en subgrid : toutes les lignes sont alignées ;
  • mobile inchangé (deux lignes par log, sans en-tête), retour à la ligne des messages longs conservé.

Vérifications

  • go vet, go test -race, go build : OK ; syntaxe JS : OK.
  • Testé sur la page réelle (sandbox:8989) avec le nouveau HTML/CSS/JS injecté : alignement en-tête/lignes, glisser à la souris (largeur appliquée et mémorisée), double-clic, en-tête collant sous la barre du haut, panneau de détails, affichage mobile 375 px sans défilement horizontal.

🤖 Generated with Claude Code

<!-- ccr-projects-attribution --> _Requested by **Cédric**_ ## Résumé Colonnes redimensionnables dans la liste des logs : - en-tête fin et collant (réception, heure message, sévérité, hôte, app, message) ; - glisser le bord d'un en-tête redimensionne la colonne, double-clic = largeur automatique ; min/max par colonne ; - largeurs mémorisées par navigateur (`logstream.cols.*`), bouton « Réinitialiser les colonnes » dans Réglages > Interface ; i18n FR/EN ; - colonnes définies une fois sur un conteneur `#table` via `--col-*`, en-tête et lignes en `subgrid` : toutes les lignes sont alignées ; - mobile inchangé (deux lignes par log, sans en-tête), retour à la ligne des messages longs conservé. ## Vérifications - `go vet`, `go test -race`, `go build` : OK ; syntaxe JS : OK. - Testé sur la page réelle (sandbox:8989) avec le nouveau HTML/CSS/JS injecté : alignement en-tête/lignes, glisser à la souris (largeur appliquée et mémorisée), double-clic, en-tête collant sous la barre du haut, panneau de détails, affichage mobile 375 px sans défilement horizontal. 🤖 Generated with [Claude Code](https://claude.com/claude-code)
claude Bot added 1 commit 2026-10-01 22:07:17 +02:00
The list gets a thin sticky header (received, message time, severity,
host, app, message). Dragging the edge of a header resizes the column,
a double-click returns it to the automatic width; widths are clamped per
column and remembered per browser (logstream.cols.*), and Settings >
Interface has a "Reset column widths" button.

The columns are defined once on a #table wrapper from --col-* variables;
the header and every row use subgrid, so all rows line up (host and app
widths no longer vary from row to row). The wrapper clips with
overflow: clip so that the header can stick under the top bar. Phones
keep the two-line layout without header.

Co-Authored-By: Claude Opus 5.5 (1M context) <noreply@anthropic.com>
claude Bot closed this pull request 2026-10-01 22:27:48 +02:00

Fusionné dans main en fast-forward (commit a12fac1).

Fusionné dans main en fast-forward (commit a12fac1).

Pull request closed

Please reopen this pull request to perform a merge.
This pull request is marked as a work in progress.
Sign in to join this conversation.
No Reviewers
No labels
1 Participants
Notifications
Due Date
No due date set.
Dependencies

No dependencies set.

Reference: vLab-BZH/logstream#2