Skip to content

fix(crm): scroll na ficha do contato, filtro no Kanban e período pers…#62

Merged
sejaanomalo-web merged 1 commit into
mainfrom
claude/crm-filtros-e-scroll-info-contato
Jul 14, 2026
Merged

fix(crm): scroll na ficha do contato, filtro no Kanban e período pers…#62
sejaanomalo-web merged 1 commit into
mainfrom
claude/crm-filtros-e-scroll-info-contato

Conversation

@sejaanomalo-web

@sejaanomalo-web sejaanomalo-web commented Jul 14, 2026

Copy link
Copy Markdown
Owner

…onalizado em Conversas

Corrige o clipping silencioso da ficha de informações do contato: o item de grid (crm-thread-pane) não tinha min-height:0, então o CSS Grid deixava o conteúdo crescer além do container e o overflow:hidden do grid cortava tudo sem nunca mostrar scrollbar — reproduzido e validado com Chrome headless antes de corrigir. Ajusta o texto do campo personalizado vazio.

Adiciona ao Kanban o mesmo painel de filtro (etiqueta + período) que já existia em Conversas, e em ambas as telas acrescenta um período "Personalizado…" com seleção de data(s) pelo usuário.

Summary by CodeRabbit

  • New Features
    • Added Kanban filtering by labels, conversation periods, custom date ranges, and search text.
    • Added customizable date-range filtering to conversations.
    • Added active filter indicators and options to clear applied filters.
  • UI Improvements
    • Improved fullscreen CRM layout behavior to prevent content overflow.
    • Updated the empty-state message for custom contact fields.

…onalizado em Conversas

Corrige o clipping silencioso da ficha de informações do contato: o item de
grid (crm-thread-pane) não tinha min-height:0, então o CSS Grid deixava o
conteúdo crescer além do container e o overflow:hidden do grid cortava tudo
sem nunca mostrar scrollbar — reproduzido e validado com Chrome headless
antes de corrigir. Ajusta o texto do campo personalizado vazio.

Adiciona ao Kanban o mesmo painel de filtro (etiqueta + período) que já
existia em Conversas, e em ambas as telas acrescenta um período
"Personalizado…" com seleção de data(s) pelo usuário.

Co-Authored-By: Claude Sonnet 5 <noreply@anthropic.com>
@vercel

vercel Bot commented Jul 14, 2026

Copy link
Copy Markdown

The latest updates on your projects. Learn more about Vercel for GitHub.

Project Deployment Actions Updated (UTC)
metas-anomalo Ready Ready Preview, Comment Jul 14, 2026 2:11am

@coderabbitai

coderabbitai Bot commented Jul 14, 2026

Copy link
Copy Markdown

Review Change Stack

📝 Walkthrough

Walkthrough

CRM conversation and Kanban views now support personalized date filtering and combined Kanban filters. The CRM page passes etiqueta data into Kanban, conversation panes constrain layout height, and the custom-fields empty-state text is updated.

Changes

CRM filtering and presentation

Layer / File(s) Summary
Custom conversation period filtering
lib/crm-periodos.ts, components/crm/ConversasFiltravel.tsx
Personalized date ranges, formatted labels, conditional date inputs, and reset behavior are added to conversation filtering.
Combined Kanban filters
components/crm/Kanban.tsx
Kanban combines text, etiqueta, predefined period, and custom date filtering with filter controls, active-filter indicators, and filtered column rendering.
CRM wiring and presentation updates
app/dashboard/crm/page.tsx, components/crm/InformacoesContato.tsx
Kanban receives etiquetas, conversation panes set minHeight: 0, and the custom-fields empty-state message is revised.

Estimated code review effort: 3 (Moderate) | ~25 minutes

Sequence Diagram(s)

sequenceDiagram
  participant User
  participant Kanban
  participant crm-periodos
  participant Leads
  User->>Kanban: Set search, etiqueta, or period filters
  Kanban->>crm-periodos: Calculate selected date range
  Kanban->>Leads: Apply leadPassaFiltro
  Leads-->>Kanban: Render matching leads
Loading

Possibly related PRs

🚥 Pre-merge checks | ✅ 5
✅ Passed checks (5 passed)
Check name Status Explanation
Description Check ✅ Passed Check skipped - CodeRabbit’s high-level summary is enabled.
Title check ✅ Passed The title matches the main CRM fixes: contact scroll handling, Kanban filtering, and the new personalized period option.
Docstring Coverage ✅ Passed No functions found in the changed files to evaluate docstring coverage. Skipping docstring coverage check.
Linked Issues check ✅ Passed Check skipped because no linked issues were found for this pull request.
Out of Scope Changes check ✅ Passed Check skipped because no linked issues were found for this pull request.
✨ Finishing Touches
📝 Generate docstrings
  • Create stacked PR
  • Commit on current branch
🧪 Generate unit tests (beta)
  • Create PR with unit tests
  • Commit unit tests in branch claude/crm-filtros-e-scroll-info-contato

Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out.

❤️ Share

Comment @coderabbitai help to get the list of available commands.

@coderabbitai coderabbitai Bot left a comment

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Actionable comments posted: 1

🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

Inline comments:
In `@components/crm/Kanban.tsx`:
- Around line 1043-1051: Update the React style annotation for
rotuloEstiloKanban to use the CSSProperties type imported from "react". Add a
type-only CSSProperties import and replace React.CSSProperties with
CSSProperties, leaving the style values unchanged.
🪄 Autofix (Beta)

Fix all unresolved CodeRabbit comments on this PR:

  • Push a commit to this branch (recommended)
  • Create a new PR with the fixes

ℹ️ Review info
⚙️ Run configuration

Configuration used: defaults

Review profile: CHILL

Plan: Pro Plus

Run ID: 8ac7ab5a-7c3c-4a63-92c4-c07289560783

📥 Commits

Reviewing files that changed from the base of the PR and between 0f39147 and 69d73fe.

📒 Files selected for processing (5)
  • app/dashboard/crm/page.tsx
  • components/crm/ConversasFiltravel.tsx
  • components/crm/InformacoesContato.tsx
  • components/crm/Kanban.tsx
  • lib/crm-periodos.ts

Comment thread components/crm/Kanban.tsx
Comment on lines +1043 to +1051

const rotuloEstiloKanban: React.CSSProperties = {
fontSize: 9,
letterSpacing: "1.5px",
textTransform: "uppercase",
color: "var(--text-4)",
fontWeight: 600,
marginBottom: 6,
}

Copy link
Copy Markdown

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

🎯 Functional Correctness | 🟠 Major | ⚡ Quick win

🧩 Analysis chain

🏁 Script executed:

#!/bin/bash
echo "--- Kanban.tsx import lines ---"
rg -n '^import' components/crm/Kanban.tsx
echo "--- Any other React.* usage in Kanban.tsx ---"
rg -n 'React\.' components/crm/Kanban.tsx
echo "--- allowUmdGlobalAccess / jsx setting ---"
fd -H -e json tsconfig.json --exec cat {}

Repository: sejaanomalo-web/metas-anomalo

Length of output: 1550


🏁 Script executed:

#!/bin/bash
set -euo pipefail

echo "--- current file around the style declaration ---"
sed -n '1036,1048p' components/crm/Kanban.tsx

echo "--- react imports in the repo using React.CSSProperties ---"
rg -n 'React\.CSSProperties|CSSProperties' components -g '*.tsx' -g '*.ts'

echo "--- tsconfig / next config hints for JSX transform ---"
fd -H -e json tsconfig.json -e js next.config.* --exec sh -c 'echo "FILE: {}"; cat "{}"; echo'

Repository: sejaanomalo-web/metas-anomalo

Length of output: 6129


🏁 Script executed:

#!/bin/bash
set -euo pipefail

echo "--- sample files using React.CSSProperties: imports and top lines ---"
for f in \
  components/SeletorPeriodoGlobal.tsx \
  components/SeletorPeriodo.tsx \
  components/crm/ConversasFiltravel.tsx \
  components/crm/Kanban.tsx
do
  echo "FILE: $f"
  sed -n '1,20p' "$f"
  echo
done

Repository: sejaanomalo-web/metas-anomalo

Length of output: 2863


🏁 Script executed:

#!/bin/bash
set -euo pipefail

python3 - <<'PY'
from pathlib import Path
for f in [
    Path("components/SeletorPeriodoGlobal.tsx"),
    Path("components/SeletorPeriodo.tsx"),
    Path("components/crm/ConversasFiltravel.tsx"),
    Path("components/crm/Kanban.tsx"),
]:
    text = f.read_text()
    print(f"{f}: React default import?", 'import React' in text or 'from "react"' in text.splitlines()[0:5])
PY

Repository: sejaanomalo-web/metas-anomalo

Length of output: 413


🏁 Script executed:

#!/bin/bash
set -euo pipefail

echo "--- does tsconfig enable allowUmdGlobalAccess anywhere ---"
rg -n '"allowUmdGlobalAccess"' -g 'tsconfig*.json' -g '*.json' .

echo "--- exact imports from react in Kanban.tsx ---"
sed -n '1,12p' components/crm/Kanban.tsx

Repository: sejaanomalo-web/metas-anomalo

Length of output: 226


Import CSSProperties here components/crm/Kanban.tsx:1044 uses React.CSSProperties, but this file only imports hooks from "react". Replace it with import type { CSSProperties } from "react" and annotate the style as CSSProperties.

🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.

In `@components/crm/Kanban.tsx` around lines 1043 - 1051, Update the React style
annotation for rotuloEstiloKanban to use the CSSProperties type imported from
"react". Add a type-only CSSProperties import and replace React.CSSProperties
with CSSProperties, leaving the style values unchanged.

@sejaanomalo-web
sejaanomalo-web merged commit d78d096 into main Jul 14, 2026
3 checks passed
@sejaanomalo-web
sejaanomalo-web deleted the claude/crm-filtros-e-scroll-info-contato branch July 14, 2026 02:24
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant