, correção de UX para gerara prévia do romaneio

This commit is contained in:
2026-08-28 12:13:42 -03:00
parent b690dfb54c
commit 1143ed373b
6 changed files with 191 additions and 70 deletions

View File

@@ -1,9 +1,10 @@
<%# app/views/admin/romaneios/show.html.erb
Editor do romaneio: veículos à esquerda, tabela editável à direita, e o PDF
REAL numa prévia recolhível no topo da coluna de edição (partial `_previa`,
que explica por que ela é <details> nativo e não um modal com JavaScript). %>
REAL num pop-up com navegação entre as folhas (partial `_previa`, que explica
por que abrir/fechar/trocar de folha é CSS puro e não JavaScript). %>
<div class="space-y-5"
data-controller="romaneio"
data-action="hashchange@window->romaneio#aoTrocarHash"
data-romaneio-url-value="<%= admin_romaneio_path(@romaneio) %>"
data-romaneio-pdf-url-value="<%= pdf_admin_romaneio_path(@romaneio) %>"
data-romaneio-veiculo-value="<%= @veiculo %>">
@@ -64,22 +65,24 @@
<%= render 'operacao' %>
<%= render 'avisos' %>
<%# Duas zonas na tela: VEÍCULOS e a edição. A prévia é o bloco fechado no topo
da coluna de edição — o PDF só é gerado quando alguém o abre (antes o
<iframe> era montado em TODO carregamento, gerando um PDF no servidor para
ficar num canto que o operador nem sempre olha). %>
<%# Duas zonas na tela: VEÍCULOS e a edição. A prévia é o pop-up mais abaixo —
o PDF só é gerado quando alguém o abre (antes o <iframe> era montado em
TODO carregamento, gerando um PDF no servidor para ficar num canto que o
operador nem sempre olha). %>
<div class="grid grid-cols-1 lg:grid-cols-[minmax(0,260px)_minmax(0,1fr)] gap-5 items-start">
<div class="lg:sticky lg:top-4">
<%= render 'veiculos' %>
</div>
<div class="space-y-4">
<%= render 'previa' %>
<%= render 'controles' %>
<%= render 'tabela', linhas: @linhas %>
<%= render 'removidas', linhas: @removidas %>
</div>
</div>
<%# Pop-up da prévia: FORA da grade porque cobre a tela inteira quando
aberto (`:target`). Fechado não ocupa espaço nem busca o PDF. %>
<%= render 'previa' %>
<% end %>
</div>