@praxisui/table 1.0.0-beta.5 → 1.0.0-beta.8

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -178,6 +178,46 @@ sequenceDiagram
178
178
  - Virtualização: habilite em Comportamento → Virtualização para listas grandes (requer altura de linha previsível).
179
179
  - Densidade e linhas de grade: ajuste em Comportamento → Aparência rápida (compacta/confortável/espaçosa; bordas horizontais/verticais).
180
180
 
181
+ ## Rolagem Horizontal (owner do scroll)
182
+
183
+ Por padrão, a `<praxis-table>` agora assume a responsabilidade pela rolagem horizontal quando o conteúdo excede a largura do container. Isso evita cortes de conteúdo e comportamentos inconsistentes entre projetos.
184
+
185
+ ### Input: `horizontalScroll`
186
+
187
+ ```
188
+ @Input() horizontalScroll: 'auto' | 'wrap' | 'none' = 'auto';
189
+ ```
190
+
191
+ - `auto` (padrão): a tabela cria um viewport com `overflow-x: auto` e permite que a tabela interna cresça com `width: max-content`. Quando a soma das colunas > container, aparece a barra de rolagem horizontal neste viewport.
192
+ - `wrap`: permite quebra de linha nas células (libera `white-space: normal`), reduzindo a largura necessária; ideal quando você prefere minimizar a rolagem horizontal.
193
+ - `none`: desabilita o comportamento interno; o host (página) deve fornecer o container com `overflow-x: auto` e as regras de largura necessárias.
194
+
195
+ Exemplo:
196
+
197
+ ```html
198
+ <!-- Comportamento padrão (auto) -->
199
+ <praxis-table resourcePath="employees"></praxis-table>
200
+
201
+ <!-- Reduz rolagem: permite quebra de linha nas células -->
202
+ <praxis-table resourcePath="employees" horizontalScroll="wrap"></praxis-table>
203
+
204
+ <!-- Host controla o scroll horizontal -->
205
+ <div class="table-shell" style="overflow-x:auto">
206
+ <praxis-table resourcePath="employees" horizontalScroll="none"></praxis-table>
207
+ <!-- host pode usar width: max-content na tabela interna conforme seu design system -->
208
+ </div>
209
+ ```
210
+
211
+ ### Editor de Configuração (Settings Panel)
212
+
213
+ Na aba “Visão Geral & Comportamento”, há um seletor “Scroll Horizontal” com as opções `Auto`, `Wrap` e `Host` (none). As alterações podem ser aplicadas (Aplicar) ou salvas (Salvar & Fechar). O valor é persistido junto com outras preferências da tabela.
214
+
215
+ ### Notas
216
+
217
+ - O caminho virtual (CDK Virtual Scroll) permanece sendo o owner da rolagem vertical; o viewport horizontal é um contêiner externo que não interfere no scroll vertical.
218
+ - Cabeçalho sticky continua funcional. Teste combinações com colunas sticky/virt para seu caso.
219
+ - Para grids alternativos (ex.: Kendo), as mesmas regras de `max-content`/`min-width: 100%` se aplicam ao elemento de tabela interno.
220
+
181
221
  ## Virtualização (CDK)
182
222
 
183
223
  Quando `behavior.virtualization.enabled` estiver ativo, as linhas da tabela são renderizadas com `cdk-virtual-scroll-viewport` (cabeçalho permanece igual).